Kotlin 中沒有基礎數據類型,只有封裝的數字類型,你每定義的一個變量,其實 Kotlin 幫你封裝了一個對象,這樣可以保證不會出現空指針。數字類型也一樣,所有在比較兩個數字的時候,就有比較數據大小和比較兩個對象是否相同的區別了。
在 Kotlin 中,三個等號 === 表示比較對象地址,兩個 == 表示比較兩個值大小。
fun main(args: Array<String>) {
val a: Int = 10000
println(a === a) // true,值相等,對象地址相等
//經過了裝箱,創建了兩個不同的對象
val boxedA: Int? = a
val anotherBoxedA: Int? = a
//雖然經過了裝箱,但是值是相等的,都是10000
println(boxedA === anotherBoxedA) // false,值相等,對象地址不一樣
println(boxedA == anotherBoxedA) // true,值相等
}