浅谈Java中equals方法和==的区别

equals是判断两个变量或者实例指向同一个内存空间的值是不是相同

而==是判断两个变量或者实例是不是指向同一个内存空间
例如:
用new方法创建一个新的对象,此时s1和s2的地址不相同而内容相同,因此用等于等于来判断是flase 用equals判断是true。

1
2
3
4
5
6
7
8
9
10
public class Test{
public static void main(String[] args){
String s1=new String("Test");
String s2=new String("Test");
if(s1==s2)
System.out.println("Same");
if(s1.equals(s2))
System.out.println("Equals");
}
}

结果输出equals。