學一門編程語言的開始每每是一個最簡單的 Hello World 程序,咱們的 Kotlin 學習也不例外:
java
fun main(args: Array<String>) {
println("Hello World")}
咱們來分析一下有意義的兩行代碼:編程
fun main(args: Array<String>){}
這行代碼用 fun 關鍵字定義了一個名爲 main 的函數,這個函數有一個 Array<String>(字符串數組) 類型的參數 args 。這句代碼與 Java 中聲明 main 函數的意義是同樣的:數組
public class HelloWorld{
public static void main(String[] args){}}
咱們再分析一下,Kotlin 與 Java 聲明 main 函數的方式不一樣之處:編程語言
Kotlin 使用 fun 關鍵字顯式地聲明函數,Java 則經過方法名後的括號代表這是個方法;ide
Kotlin 容許建立 包級函數,函數不必定在類裏面,Java 則要求全部方法必須包括在類裏;函數
Kotlin 中全部變量、函數和類默認都是 public 的,Java 則須要用 public 關鍵字聲明到處可用;學習
Kotlin 拋棄了靜態變量和靜態方法,沒有 static 關鍵字,Java 則用 static 關鍵字聲明靜態成員;spa
Kotlin 中聲明一個函數沒有返回值使用 Unit 關鍵字,可是通常省略,Java 則用 void 關鍵字聲明無返回值;orm
Kotlin 聲明函數參數列表採用「變量名: 變量類型」的方式,Java 則採用 「變量類型 變量名」的形式;字符串
Kotlin 拋棄了類 C 語言聲明數組的方式,使用 「Array<T>」 的方式聲明數組,Java 則採用類 C 語言的「T[]」方式聲明數組;
Kotlin 語句結尾通常不使用分號 ; 結尾,Java 則必須用分號結尾。
第二行:
println("Hello World")
對比 Java:
System.out.println("Hello World");
好像 Kotlin 只是把 Java 的 「System.out」給省略了?咱們看一下 Console.kt 文件中對 println() 函數的聲明:
@kotlin.internal.InlineOnlypublic inline fun println(message: Any?) {
System.out.println(message)}
好吧,Kotlin 的 println() 函數就是對 Java 中 System.out.println() 方法的包裝……
讓咱們運行程序,你的控制檯是否是輸出了 Hello World 呢?
做者:CNife
連接:https://zhuanlan.zhihu.com/p/26443813