Kotlin 是強類型語言, 定義變量的時候必須明確這個變量的類型是什么. 但是上一節(jié)中,
val oneVal = "codergege"
這個語句我們并沒有給 oneVal 指定類型啊? 因為 kotlin
編譯器很聰明, 它能根據(jù)初始化賦予變量的值類型推斷出變量類型. "codergege" 明顯是
一個 String 變量, 所以編譯器就知道了 onVal 這個變量是 String 類型的.
這兩條語句是等價的:
val oneVal = "codergege" // 類型推斷, 可以省略類型不寫
val oneVal: String = "codergege"
Kotlin 的類型推斷可以用在很多地方, 比如變量聲明初始化的時候, 比如方法(或叫函數(shù))
的返回值. 記住一個原則, 當(dāng)編譯器能明確知道類型的時候, 才可以省略不寫.