这两种方式可用于对象间的比较,即“”运算符与equals()方法,
“”运算符用于比较两个对象的内存地址值是否相等,equals()方法用于比较两个对象的内容是否一致。
“==”运算符用于比较
package test;
public class TestEquals {
public static void main(String[] args) {
String str1 = new String("java");
String str2 = new String("java");
String str3 =str2;
if (str1==str2) {
System.out.println("str1 == str2");
}else {
System.out.println("str1 != str2");
}
if (str2 ==str3) {
System.out.println("str2 == str3");
}else {
System.out.println("str2 != str3");
}
}
}
运行结果如下
equals方法用于对象比较
package test;
public class TestEquals {
public static void main(String[] args) {
String str1 = new String("java");
String str2 = new String("java");
String str3 =str2;
if (str1.equals(str2)) {
System.out.println("str1 equals str2");
}else {
System.out.println("str1 not equals str2");
}
if (str2.equals(str3)) {
System.out.println("str2 equals str3");
}else {
System.out.println("str2 not equals str3");
}
}
}
运行结果如下