ホームページ >Java >&#&チュートリアル >Java 配列: 「equals()」と「Arrays.equals()」のどちらを使用すべきか?
Java で配列を扱う場合、2 つの比較方法である等しいとのニュアンスを理解することが重要です。配列と等しい。どちらの方法も異なる目的を果たし、その選択は目的の操作によって異なります。
目的: array1 と array2 がメモリ内の同じ配列インスタンスを参照しているかどうかを確認します。つまり、同じ配列オブジェクトであるかどうかを検証します。
結果:
注: これは、 == 演算子を使用して配列を比較するのと同等であり、参照の等価性もチェックされます。ただし、配列の内容は比較されないため、これは配列比較の一般的な動作ではありません。
目的: array1 と array2 の内容を要素ごとに比較します。
結果:
注: これは、配列の内容を比較するための推奨される方法です。配列内の値が同じであることを確認します。
equals と Arrays.equals の主な違いは、その焦点にあります。 equals は配列参照を比較し、Arrays.equals は配列の内容をチェックします。
コード内で配列を比較する場合、この区別を理解することが重要になります。たとえば、次のシナリオを考えてみましょう。
int[] array1 = {1, 2, 3}; int[] array2 = {1, 2, 3}; boolean equalRef = array1.equals(array2); boolean equalContent = Arrays.equals(array1, array2);
ここで、array1 と array2 は同じ内容を持ちますが、異なる配列インスタンスです。したがって、equalRef は false になりますが、equalContent は true になります。
Java の配列操作では、equals と Arrays.equals の違いを理解することが不可欠です。目的の操作に基づいて適切な方法を選択することで、開発者は正確かつ効率的な配列比較を保証できます。
以上がJava 配列: 「equals()」と「Arrays.equals()」のどちらを使用すべきか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。