A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© @ne_pie尒ce 中级黑马   /  2013-11-8 07:39  /  767 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

        public static void main(String[] args) {
               
                Integer i1=50;
                Integer i2=50;
                System.out.println(i1==i2);
               
                Integer i3=150;
                Integer i4=150;
                System.out.println(i3==i4);
                       
        }
运行结果:true
                 false
为什么比较结果不一样?

2 个回复

倒序浏览
小于127的数会存储在常量池里,每次都会到常量池里检查调用的数的对象存在与否,不存在就创建,存在就直接引用。true
大于127的数就会各自创建对象,所以地址的引用不一样。false
回复 使用道具 举报
警告:不要频繁发帖,尤其是很小的一些问题~
视频里都有讲解
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马