聲明常量和變量

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

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

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

  1. val 或 var:不可省略。ide

    val 聲明常量,只能夠賦值一次;var 聲明變量,能夠屢次賦值。spa

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

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

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

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

    聲明變量的類型用英文冒號表示,放在變量名後,能夠是 Kotlin 和 Java 中的引用類型。爲何必定要是引用類型呢?由於 Kotlin 拋棄了 Java 中的基本數據類型,全部數字類型都是引用類型。編譯

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

    //定義一個 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" //編譯錯誤,表達式類型與聲明的變量衝突
相關文章
相關標籤/搜索