`
hefan
  • 浏览: 45775 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

==与.equals()方法的区别

    博客分类:
  • java
 
阅读更多

==与.equals()的区别

  • 比较内存地址是否相同:.equals(Object o)与==一致,如果引用同一对象,则结果都为true;

    举例说明:
    boolean isSame=false;
    Customer c1=new Customer();
    Customer c2=c1;
    isSame=(c1==c2);   说明:isSame=true;
    isSame=(c1.equals(c2))   说明:isSame=true;

  • 比较是否相同:在Java中,因为以下类覆盖了Object类的.equals(Object o)的方法,实现了按值比较,这些类包括:
  1. String类和Date类
  2. Java包装类,如:Byte,Integer,Short,Character,Long,Float,Double,Boolean

    所以在以上类中,引用对象的不同使==返回值为false,而值相同的引用对象.equals(Object o)方法返    回值为true;
    举例说明:
    boolean isSame=false;
    String s1=new String("Hello");
    String s2=new String("Hello");
    isSame=(s1==s2);   说明:isSame=false;
    isSame=(s1.equals(s2));   说明:isSame=true;
============================================================================================
附:如何在自定义类Customer中覆盖Object类中的.equals(Object o)方法,使其可以按值比较,
    public boolean equals(Object o){
       if(this==o) return true;
       if(!o instanceof Customer) return false;
       final Customer other=(Customer)o;
       if(this.getName().equals(other.getName())) return true;
       else return false;   
    }

分享到:
评论

相关推荐

    java中equals和==的区别.doc

    Java 中 equals 和 == 的区别 Java 中的 equals 和 == 是两个不同的运算符,它们之间的区别是非常重要的。 首先,我们需要了解 Java 中的内存模型。在 Java 中,变量可以分为两种:基本类型(primitive type)和...

    与==的区别.docxequal与==的区别.docx

    在Java编程语言中,`equals()`方法和`==`运算符是用于比较对象之间关系的两种常见方式,但它们有着显著的区别。理解这些差异对于编写正确的代码至关重要。 首先,`==`运算符主要用于比较基本类型(如int、char、...

    java中equals和==的区别.pdf

    equals方法的默认实现是比较两个对象的引用是否相同,这与"=="运算符的功能是一样的。但是,很多Java类都重写了equals方法以提供更加有用的行为。例如,String类就重写了equals方法,以便比较两个字符串的内容是否...

    “ ==”和.Equals()有什么区别?

    而".Equals()"方法默认行为与"=="类似,但可以被重写以实现自定义的值比较逻辑。在实际开发中,根据需求选择合适的比较方式,对于保持代码的清晰性和准确性至关重要。理解这两者的区别有助于避免潜在的错误和提高...

    Java中的==和equals区别

    ### Java中的`==`与`equals`方法的区别详解 在Java编程中,比较对象的相等性是一个常见的需求,但很多初学者对于`==`运算符与`equals`方法的区别容易混淆。本文将深入探讨两者之间的差异,以及它们在不同场景下的...

    java中equals和==的区别.

    1. 对于非字符串对象,`equals()`方法默认的行为与`==`相同,即比较对象的引用。但是,通常建议覆盖`equals()`方法以实现根据对象内容进行比较,而不是仅基于引用。 2. 在`String`类中,`equals()`方法已经被重写,...

    java中equals和==的区别.docx

    Java 中 equals 和 == 的区别 Java 中的 equals 和 == 是两个常用的操作符,经常用于比较对象或变量的值。然而,许多开发者不知道它们之间的区别,或者误用它们,导致程序出错。下面我们将详细解释 equals 和 == 的...

    java中equals和==的比较.pdf

    `equals()` 是Object类的一个方法,它的默认行为是与`==`一样,比较对象的引用。然而,很多类(如String、Integer等)都重写了`equals()`方法,使其比较对象的内容而不是引用。这意味着当调用`equals()`时,实际...

    ==运算符和Equals()方法区别

    "运算符和Equals()方法区别" 在C#语言中,`==`运算符和`Equals()`方法都是用来比较两个对象是否相等,但是它们之间存在着很大的区别。 对于值类型来说,`==`运算符和`Equals()`方法的行为是一致的,都会比较两个...

    java中equals和==的区别

    Java 中 equals 和 == 的区别 Java 中的 equals 和 == 是两个不同的概念,很多开发者容易混淆它们。理解这两个概念的区别是非常重要的,因为它们对编程的正确性和性能都有很大的影响。 首先,我们需要了解 Java ...

    java中equals和==的区别文.pdf

    默认情况下,`equals()` 方法的行为与 `==` 相同,即比较对象的引用。但在某些特定类如 `String` 中,`equals()` 方法已经被重写,用于比较对象的内容是否相同。例如,两个 `String` 对象可能有不同的引用,但它们...

    ==和equals的区别

    Java 中的 equals 方法是一个比较对象内容的方法,其声明格式是 public boolean equals(Object obj),比较规则为:当参数 obj 引用的对象与当前对象为同一个对象时,就返回 true,否则返回 false。例如: ```java ...

Global site tag (gtag.js) - Google Analytics