首先明确一下这二者的比较
通常来说
== 比较 的是地址值
equals比较的是数值
所以还是要看是否重写equals
/**
* java中类都是继承了object
* object的equals是比较地址值
*/
person p1 = new person();
person p2 = new person();
p1.age = 10;
p2.age = 10;
System.out.println(p1.equals(p2));//false
/**
* integer重写了object的equals,比较的是数值而不是地址值
*/
Integer a1 = new Integer(10);
Integer a2 = new Integer(10);
System.out.println(a1 == a2);//fasle
System.out.println(a1.equals(a2));//true
Java equals与==的区别

本文详细解释了Java中equals方法与==操作符的区别。通过具体的代码示例展示了默认情况下二者分别用于比较对象引用和实际值的不同行为,并指出重写equals方法可以改变这种默认行为。
1185

被折叠的 条评论
为什么被折叠?



