Java中==与equals方法的区别
代码
public class xxx {
public static void main(String[] args)
{
String a1=new String("abc");
String a2=new String("abc");
String a3=a2;
//使用“===”运算符比较a2和a3
System.out.println("a2==a3的运算结果为:"+(a2==a3));
//使用equal的方法比较a2和a3
System.out.println("a2.equals(a3)的运算结果为:"+(a2.equals(a3)));
}
== 运行结果 ==
我们可以看到==与equals()方法是有区别的:
1.equals()方法是String类中的方法,他用于比较两个对象引用所指内容是否相等
2. ==运算符比较的是两个对象引用地址是否相等。
这里呢,a1与a2是两个不同的对象引用,两者在内容中的位置不同,而String c3=c1;语句是将c1赋值给c3,所以两个对象引用是相等的,
因此很显然结果就是我们在eclipse中所看到的。