5 回答

TA贡献1845条经验 获得超8个赞
这个得看你的代码如何来写了。Integer.equals(int)
int == Integer
这种会把Integer
转换为int
(拆箱)进行比较,你会发现如果Integer
如果是一个null
值的时候会出现NullPointerException
。
至于面试官想要的答案,恐怕只有他自己清楚了。

TA贡献1860条经验 获得超8个赞
话不多说:常量池
public class Test {
public static void main(String[] args) {
Integer a1 = 127;
Integer b1 = 127;
Integer a2 = 128;
Integer b2 = 128;
System.out.println(a1 == b1);
System.out.println(a2 == b2);
}
}
刚写的,你执行一下看结果

TA贡献1793条经验 获得超6个赞

TA贡献1871条经验 获得超8个赞
public static void main(String[] args) {
Integer a1 = 127;
Integer a2 = 127;
System.out.println(a1 == a2);// true
System.out.println(a1.equals(a2));// true
Integer b1 = 128;
Integer b2 = 128;
System.out.println(b1 == b2);// false
System.out.println(b1.equals(b2));// true
Integer c1 = 128;
int c2 = 128;
System.out.println(c1 == c2);// true
System.out.println(c1.equals(c2));// true
int d1 = 127;
Integer d2 = null;
System.out.println(d1 == d2);// NullPointerException
}
添加回答
举报