Java 物件 equals() 方法



描述

Java Object equals(Object obj) 方法指示其他某個物件是否“等於”此物件。

Object 類的 equals 方法實現了物件上最具辨別力的等價關係;也就是說,對於任何非空引用值 x 和 y,此方法僅當 x 和 y 引用同一物件時才返回 true(x == y 的值為 true)。

請注意,每當覆蓋此方法時,通常都需要覆蓋 hashCode 方法,以維護 hashCode 方法的一般約定,該約定指出相等的物件必須具有相等的雜湊碼。

宣告

以下是 java.lang.Object.equals() 方法的宣告

public boolean equals(Object obj)

引數

obj - 要比較的引用物件。

返回值

如果此物件與 obj 引數相同,則此方法返回 true;否則返回 false

異常

檢查相容物件的相等性示例

以下示例演示了 java.lang.Object.equals() 方法的使用。在此示例中,我們建立了一個值為 50 的 Integer 物件。現在使用 equals() 方法,我們將 Integer 物件與值為 50 的物件進行比較,並列印結果。

package com.tutorialspoint;

public class ObjectDemo {

   public static void main(String[] args) {

      // get an integer, which is an object
      Integer x = Integer.valueOf(50);

      // check if x is equal with another int 50
      System.out.println("" + x.equals(50));
   }
}

輸出

讓我們編譯並執行以上程式,這將產生以下結果:

true

檢查不相容物件的相等性示例

以下示例演示了 java.lang.Object.equals() 方法的使用。在此示例中,我們建立了一個值為 50 的 Integer 物件和一個具有相同值的 Float 物件。現在使用 equals() 方法,我們將這兩個物件進行比較,並列印結果。

package com.tutorialspoint;

public class ObjectDemo {

   public static void main(String[] args) {

      // get an integer, which is an object
      Integer x = Integer.valueOf(50);

      // get a float, which is an object as well
      Float y = Float.valueOf(50f);

      // check if these are equal,which is 
      // false since they are different class
      System.out.println("" + x.equals(y));
   }
}

輸出

讓我們編譯並執行以上程式,這將產生以下結果:

false

檢查相同物件的相等性示例

以下示例演示了 java.lang.Object.equals() 方法的使用。在此示例中,我們建立了一個值為 50 的 Integer 物件。現在使用 equals() 方法,我們將 Integer 物件與自身進行比較,並列印結果。

package com.tutorialspoint;

public class ObjectDemo {

   public static void main(String[] args) {

      // get an integer, which is an object
      Integer x = Integer.valueOf(50);

      // check if x is equal with same object
      System.out.println("" + x.equals(x));
   }
}

輸出

讓我們編譯並執行以上程式,這將產生以下結果:

true
java_lang_object.htm
廣告

© . All rights reserved.