#注意,equals 和 == 的区别是基于引用指向对象的。常量的比较依然用 ==
1.equals()用于比较两个引用指向的对象的值是否一样
2. == 用于比较两个引用是否指向同一个对象
如:
public class Main
{
public static void main(String args[])
{
String str1 = new String("abc");
String str2 = new String("abc");
System.out.println(str1 == str2);
System.out.println(str1.equals(str2));
}
}
打印结果:
false
true
因为str1 和 str2 是指向地址不同的两个对象,所以第一个打印 false
因为 str1 和 str2 指向的对象的值是一样的(都是 abc),所以第二个打印true