java:判断两个实例(对象)相等
在Java中,判断两个对象是否相等需要区分两种情况,核心区别在于 比较的是引用地址还是对象内容。
引用地址判断使用==运算符
// 创建2个对象。
Object obj1 = new Object();
Object obj2 = new Object();System.out.println(obj1 == obj2); // false(不同内存地址)Object obj3 = obj1;
System.out.println(obj1 == obj3); // true(同一内存地址)
-
作用:直接比较两个对象在内存中的地址是否相同(即是否指向同一个对象)。
-
适用场景:检查两个引用是否指向同一个实例。
对象内容判断使用object.equals()方法
String s1 = new String("Hello");
String s2 = new String("Hello");System.out.println(s1.equals(s2)); // true(内容相同)
-
默认行为:
Object
类中的equals()
默认使用==</