不对啊Integer
Integer c =100; Integer d = 100;我这边c==d的结果为true啊,我的是jdk1.8131,是不是后续的jdk版本做的修改?
39
收起
正在回答
2回答
当c,d的范围属于 -128到127之间的时候,c==d结果为true;当c<-128或者 d>127的时候,结果为false。
-128<x<127的时候,会产生一个常量池,去存放x的值。如果两个变量都在这个范围内切相等,就等于常量池中的同一个值进行比较。
如果x的值不在上述范围,就不会被放到常量池,而是新建2个数值相等的不同对象。也就会出现false。
Java零基础入门18
- 参与学习 人
- 提交作业 7317 份
- 解答问题 14452 个
想要入门学编程?多年一直活跃在编程语言排行版前列的Java是一个很好的选择。本路径将从Java基础语法、面向对象、常用工具类三部分,为你开启软件开发的大门!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星