Integer的常量池数据比较

1.5jdk一下

*****************Integer a = 100; 不相当于 Integer a = value.of(100);

Integer a = value.of(127);//(-128 - 127)
Integer b= value.of(127);//(-128 - 127)
System.out.print(a==b);
System.out.print(a.equals(b));

结果是:truetrue

Integer a = value.of(128);
Integer b= value.of(128);
System.out.print(a==b);
System.out.print(a.equals(b));

结果是:falsetrue

1.5jdk以上

****************Integer a = 100; 相当于 Integer a = value.of(100);

Integer a = 127;//(-128 - 127)
Integer b= 127;//(-128 - 127)
System.out.print(a==b);
System.out.print(a.equals(b));

结果是:truetrue

Integer a = 130;
Integer b= 130;
System.out.print(a==b);
System.out.print(a.equals(b));

结果是:falsetrue

猜你喜欢

转载自blog.csdn.net/ASZJBGD/article/details/83311670