我是新來的斯卡拉。我遇到一個奇怪的事實,這是Byte類型可以包含-128,但不是128 scala> val overflow1NegByte = -129:Byte
<console>:11: error: type mismatch;
found : Int(-129)
required: Byte
val overflow1NegByte = -129:Byte
我想知道「==」運算符如何處理原始值。我知道「==」會檢查兩個引用是否引用了堆上的同一個對象。 但是它如何在原始值的上下文中存儲在堆棧中? e.g int a = 5; int b = 5; 我認爲這些值不存儲在同一個地方的內存,但 一個== b返回「真」。 我的推測是JVM將存儲在堆棧中的所有值存儲在內存中的一個位置,並在「==」的情況下返回true。 你能否以更詳細的方式向我解釋這件事? Re