【发布时间】:2014-01-21 06:40:18
【问题描述】:
我想在我的应用程序中检查整数相等,但遇到了一个奇怪的行为。在某些时候,我的应用程序可以正常工作,但在某些时候却失败了。所以我只是在这里写了一个测试代码
public class EqualityTest {
public static void main(String args[]) {
Integer a = 100;
Integer b = 100;
Integer c = 1000;
Integer d = 1000;
if (a == b) {
System.out.println("a & b are Equal");
}
else {
System.out.println("a & b are Not Equal");
}
if (c == d) {
System.out.println("c & d are Equal");
} else {
System.out.println("c & d are Not Equal");
}
}
}
输出
a & b are Equal
c & d are Not Equal
我的问题是为什么 c 和 d 不相等?
【问题讨论】:
-
整数中的较低值缓存
-
哦!是的得到了答案。我需要使用equals。
-
还有来自this的相关回答
-
最多 127 它在不相等后显示相等