ホームページ >Java >&#&チュートリアル >Java 配列: `equals()` と `Arrays.equals()` をどちらに使用するか?

Java 配列: `equals()` と `Arrays.equals()` をどちらに使用するか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-22 16:14:10801ブラウズ

Java Arrays: When to Use `equals()` vs `Arrays.equals()`?

equals と Java の Arrays.equals

Java では、配列を比較する場合、array1.equals(array2) と Arrays の 2 つのステートメントが使用されます。 quals(array1, array2) は互換性があるように見えるかもしれません。ただし、それらの間には決定的な違いがあります。

array1.equals(array2)

このステートメントは、2 つの配列が同じオブジェクトであるかどうかを確認します。つまり、それらは 2 つの配列を参照します。同じ記憶場所。 array1 == array2 の場合にのみ true を返します。つまり、内容の同等性ではなく、同一性をテストします。

Arrays.equals(array1, array2)

このステートメントは、2 つの配列の内容を比較します。両方の配列の長さが同じで、対応するすべての要素が等しい場合にのみ true を返します。

主な違い:

2 つのステートメントの基本的な違いは次のとおりです。彼らの目的。 array1.equals(array2) はオブジェクトの同一性をテストし、Arrays.equals(array1, array2) はコンテンツの同一性をテストします。

どちらを使用する場合:

  • 2 つの配列が同じ基礎を参照しているかどうかを確認したい場合は、array1.equals(array2) を使用します。 object.
  • 配列内に含まれる実際の値を比較する場合は、Arrays.equals(array1, array2) を使用します。

追加の考慮事項:

  • array.toString() は常に望ましい出力を提供するとは限らないことに注意してください。 Arrays.toString(array) は、配列の内容の文字列表現を取得するために使用する必要があります。

以上がJava 配列: `equals()` と `Arrays.equals()` をどちらに使用するか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。