聲明常量和變量

Kotlin 中聲明常量和變量的方式與 Java 的差異較大,完整的聲明格式是:

val|var 變量名[: 變量類型][= 初始化賦值]

完整的聲明分爲四個部分:

  1. val 或 var:不可省略。

    val 聲明常量,只可以賦值一次;var 聲明變量,可以多次賦值。

    建議儘量使用 val,能不使用 var 就不使用 var。在使用 IDEA 編寫 Kotlin 程序時,如果聲明瞭 var 變量而沒有改變它的值,就會提示你把 var 改成 val。這裏體現了 Kotlin 語言追求的價值:“清楚地說明每一個要素,避免因爲混淆而出現錯誤”,所以要求變量能不變就不變,以免出現不必要的錯誤。

    val a = 1 //定義常量 a,賦值爲 1a = 1 + 1 //編譯錯誤,val 聲明的常量只能賦值一次var b = 10 //定義變量 b,賦值爲 10b = 1 + 1 //將 b 重新賦值爲 2
  2. 變量名:不可省略。

    Kotlin 的命名風格與 Java 相同,變量名應該使用駱峯法命名,首字母小寫,之後每個單詞首字母大寫,不使用下劃線分隔單詞。

    val anInt = 1val aString = "Hello World"
  3. [: 變量類型]:當有初始化賦值時可省略。

    聲明變量的類型用英文冒號表示,放在變量名後,可以是 Kotlin 和 Java 中的引用類型。爲什麼一定要是引用類型呢?因爲 Kotlin 拋棄了 Java 中的基本數據類型,所有數字類型都是引用類型。

    如果沒有指定數據類型,Kotlin 會根據後面的初始化賦值自動推斷數據類型

    //定義一個 Kotlin.Int 類型的變量並賦爲 1,這個類型對應 Java 中的 int 類型val intKotlin: Int = 1val intJava: int //編譯錯誤,不能定義爲 Java 中的基本數據類型val listJava: List<String> //定義一個 Java 中的引用類型變量val intInfferred = 1 //根據賦值自動推斷爲 Kotlin.Int 類型
  4. [= 初始化賦值]:當指定了數據類型時可省略。

    一個表達式,不能與指定的變量類型衝突。

    val d: Int = "String" //編譯錯誤,表達式類型與聲明的變量衝突


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章