kotlin学习系列——“==”和“===”的区别
code 1 fun main ( args : Array < String > ) { val a : Int = 1000 println ( a == a ) //true println ( a === a ) //true val a1 : Int = a val a2 : Int = a println ( a1 == a2 ) //true println ( a1 === a2 ) //true } 1 2 3 4 5 6 7 8 9 code 2 fun main ( args : Array < String > ) { val a : Int = 1000 println ( a == a ) //true println ( a === a ) //true val a1 : Int ? = a val a2 : Int ? = a println ( a1 == a2 ) //true println ( a1 === a2 ) //false } 1 2 3 4 5 6 7 8 9 这里先扔出结论: 在Kotlin中, === 表示比较对象地址,== 表示比较两个值大小 。 所以无论是 a == a 还是 a === a 都是返回true,因为是同一个变量,数值大小和地址都是相等的。 现在重点看 a1 和 a2,这里的把 a 分别赋给 a1 和 a2。