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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 马伟恒 中级黑马   /  2012-4-18 07:34  /  1469 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


2 个回复

倒序浏览
“==”也用于判断两个对象参考名称是否指向同一个对象,在自动装箱时对于同一个从-128到127之间的值,他们被装箱为Integer对象后,会存在内存中被重用。
System.out.println("i1=i2\t"+(i1==i2));//true,装箱的过程
System.out.println("i1=i2+i3\t"+(i1==i2+i3));//true
System.out.println("i4=i5\t"+(i4==i5));//false,他们是两个不同的对象,所以为false
System.out.println("i4=i5+i6\t"+(i4==i5+i6));//true
回复 使用道具 举报
System.out.println("i1=i2\t"+(i1==i2))  判断的i1和i2的值是否相等 答案为true
System.out.println("i1=i2+i3\t"+(i1==i2+i3)); 判断的是i1的值是否等于i2+i3的值, 答案为true
System.out.println("i4=i5\t"+(i4==i5)); 判断的i4和i5指向的对象是否相同,i4和i5虽然new出的值相同,但在内存中指向对象的位置不同 所以为false
System.out.println("i4=i5+i6\t"+(i4==i5+i6));//true 判断的是i4的值是否等于i5+i6的值, 答案为true
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马