3
我给自己直到上午12:00学习并获得生产力(希望)在kotlin上。Kotlin的Int参考平等行为,值介于-128到127之间
继https://kotlinlang.org/docs/kotlin-docs.pdf我试过第17页,这些片段可能有人请帮助我理解了为什么===
回报true
如果值是127
-128
之间?
下确实打印false
:
val a: Int = 10000
val boxedA: Int? = a // [email protected]
val anotherBoxedA: Int? = a // [email protected] why?
print(boxedA === anotherBoxedA) // false
但是改变a
到-128
之间的任意值127
始终打印true
:
val a: Int = -128
val boxedA: Int? = a // [email protected]
val anotherBoxedA: Int? = a // [email protected] why?
print(boxedA === anotherBoxedA) // true!
在我看来,如果Int
值的边界之外-128
到127
(Java字节)kotlin在分配时创建了一个新对象,它使得参考不等于。
我明白了。好,然后回到阅读 –