equalsJAVA equals方法( 二 )

String类中重写了equals()方法,调用equals()方法比较两个String对象时,比较的是String的内容 。还有一些类如Double,Date,Integer等,都对equals()方法进行了重写,用来比较两个对象所存储的内容是否相等 。
public static void main(String[] args) {String s1 = "abcdefg";String s2 = "abcdefg";String s3 = new String("abcdefg");System.out.println(s1.equals(s2)); // 两个对象所存储的内容相等,返回trueSystem.out.println(s1 == s2); // 两个对象所存储的内容相等,返回trueSystem.out.println(s1.equals(s3)); // 两个对象所存储的内容相等,返回trueSystem.out.println(s1 == s3); // "=="比较两个对象的地址,两个对象地址不一样,返回false }总结

  1. 使用“==”时,当时基本数据类型比较时,比较它们存储的值是否相等 。当比较引用类型时,比较引用变量所指向的对象地址是否相等 。
  2. 使用equals() 方法时,但equals方法不能作用于基本数据类型 。如果没有对equals方法进行重写,比较的是引用变量所指向的对象地址是否相等 。像String类、Integer类等对equals方法进行了重写,比较的是指向对象的内容是否相等 。





特别声明:本站内容均来自网友提供或互联网,仅供参考,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。