我是靠谱客的博主 沉静期待,最近开发中收集的这篇文章主要介绍Integer比较值大小==,大于等于128的返回false,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

代码:

Integer a1 = 127;
Integer b1 = 127;
if(a1==b1){
    System.out.println("相等");
}else{
    System.out.println("不等");
}
 
Integer a = 128;
Integer b = 128;
if(a==b){
    System.out.println("相等");
}else{
    System.out.println("不等");
}

结果:

相等
不等


分析:

JVM会自动维护八种基本类型的常量池,int常量池中初始化-128~127的范围,所以当为Integer i=127时,在自动装箱过程中是取自常量池中的数值,而当Integer i=128时,128不在常量池范围内,所以在自动装箱过程中需new 128,所以地址不一样。

最后

以上就是沉静期待为你收集整理的Integer比较值大小==,大于等于128的返回false的全部内容,希望文章能够帮你解决Integer比较值大小==,大于等于128的返回false所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(41)

评论列表共有 0 条评论

立即
投稿
返回
顶部