版权声明:本文为博主原创文章,无需授权即可转载,甚至无需保留以上版权声明,转载时请务必注明作者。
https://blog.csdn.net/weixin_43453386/article/details/83749849
Integer的比较
public class Test {
public static void main(String[] args) {
Integer a=new Integer(9);
Integer b=new Integer(9);
//引用的比较,false
System.out.println(a == b);
//值的比较,true
System.out.println(a.intValue() == b.intValue());
}
}
- a==b
结果:false
原因:内存地址的比较
这2个对象是new标识符构造的,在堆内存里开辟两块不同的空间存放对象,所以内存地址不同。 - a.intValue()==b.intValue()
结果:true
原因:值的比较
intValue方法是取到对象的值