为什么Integer “ =”运算符不适用于128和Integer值之后的值?有人可以解释这种情况吗?
这是我的Java环境:Java版本“ 1.6.0_37”
Java(TM)SE运行时环境(内部版本1.6.0_37-b06)
Java HotSpot(TM)64位服务器VM(内部版本20.12-b01,混合模式)
样例代码:
Integer a;
Integer b;
a = 129;
b = 129;
for (int i = 0; i < 200; i++) {
a = i;
b = i;
if (a != b) {
System.out.println("Value:"+ i + " - Different values");
} else {
System.out.println("Value"+ i + " Same values");
}
}
控制台输出的一部分:
Value:124 - Same values
Value:125 - Same values
Value:126 - Same values
Value:127 - Same values
Value:128 - Different values
Value:129 - Different values
Value:130 - Different values
Value:131 - Different values
Value:132 - Different values
谢谢!
慕田峪7331174
白衣非少年
相关分类