equals 與Arrays.equals:Java 中數組比較方法的比較
在Java 中,比較數組可能是一項簡單的任務。但是,使用 equals 方法和 Arrays.equals 方法之間存在細微差別,這可能會導致意外結果。
equals 與 Arrays.equals
equals方法繼承自Object類,用於比較物件的參考。當應用於陣列時,當且僅當 array1 和 array2 是同一個數組,即它們共享相同的記憶體位置時,array1.equals(array2) 才會傳回 true。
另一方面,Arrays.equals (array1, array2) 專門比較陣列的內容。如果數組長度相同且每個索引處的相應元素相等,則傳回 true。
範例:
考慮以下程式碼:
Object[] array1 = {1, 2, 3}; Object[] array2 = {1, 2, 3}; System.out.println(array1.equals(array2)); // false System.out.println(Arrays.equals(array1, array2)); // true
在這種情況下,array1 和 array2 是具有相同內容的不同陣列。因此,array1.equals(array2) 傳回 false,而 Arrays.equals(array1, array2) 傳回 true。
用例
其他注意事項
以上是Java 陣列:equals() 與 Arrays.equals() – 何時使用哪一個?的詳細內容。更多資訊請關注PHP中文網其他相關文章!