java Integer -128-127

Integer aa = -128;
Integer bb = -128;
System.out.println(aa==bb);//true

Long aal = 127l;
Long bbl = 127l;
System.out.println(aal==bbl);//true

Double aad = 127d;
Double bbd = 127d;
System.out.println(aad==bbd);//false
Integer是对象,不应该true啊;原理是这样的:jvm会把-128-127整型缓存在方法区常量池中,当我们用127时,其实是引用到常量池中的127,也就是aa和bb的引用是同一个引用,所以为true.
Integer、Long的源码也可以看出:
public static Integer valueOf(int i) {
if (i >=

java Integer -128-127最先出现在Python成神之路

版权声明:
作者:倾城
链接:https://www.techfm.club/p/7356.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>