Integer a = 123;
Integer b = 123;
System.out.println(a==b);
结果为true。
但是如果代码如下
Integer a = 1230;
Integer b = 1230;
System.out.println(a==b);
这个的结果就是false。
问题解决
当Integer a = 123时,其实他底层自动转换成了Integer a = Integer.valueOf(123)。
需要文中资料的朋友,可以加我\/信获取:vip1024b 备注Java
然后他就会判断i的大小是否超过了IntegerCache的最小值和最大值。
读者福利
由于篇幅过长,就不展示所有面试题了,感兴趣的小伙伴
更多笔记分享
更多笔记分享
[外链图片转存中…(img-K25y3HoG-1716310189196)]