ホームページ >Java >&#&チュートリアル >Java の Arrays.equals() メソッドは、2 つの配列が等しいかどうかをどのように比較しますか?
古典的なプログラミング言語である Java では、日々の開発で 2 つの配列が等しいかどうかを比較する必要がよくあります。開発者が迅速かつ正確に比較できるようにするために、Java には、equals( ) Arrays クラスのメソッド。
それでは、Java では Arrays.equals() メソッドは 2 つの配列が等しいかどうかをどのように比較するのでしょうか?以下、実際のコード例を用いて説明します。
まず、Arrays.equals() メソッドは 1 次元配列の比較を実装していることに注意してください。多次元配列を比較したい場合は、独自のメソッドを記述する必要があります。次に、equals() メソッドを使用するときに注意する必要があるのは、2 つの配列の長さが等しく、対応する要素が等しい場合にのみ、equals() メソッドは true を返し、それ以外の場合は false を返します。
次は、Arrays.equals() メソッドを使用して 2 つの整数配列が等しいかどうかを比較する簡単な例です。
int[] array1 = {1, 2, 3}; int[] array2 = {1, 2, 3}; boolean result = Arrays.equals(array1, array2); if(result) { System.out.println("两个数组相等!"); } else { System.out.println("两个数组不相等!"); }
上記のコードでは、2 つの整数型が最初に定義されています。配列 array1 と array2そして、Arrays.equals()メソッドで2つの配列が等しいかどうかを比較し、最後にif...else文で判定結果を出力します。
配列 1 と配列 2 は長さが等しく、対応する要素も等しいため、上記のコードは「2 つの配列は等しい!」と出力します。
次に、要素が等しくない場合を追加します。
int[] array1 = {1, 2, 3}; int[] array2 = {1, 2, 4}; boolean result = Arrays.equals(array1, array2); if(result) { System.out.println("两个数组相等!"); } else { System.out.println("两个数组不相等!"); }
このコードでは、array1 と array2 の要素は完全に等しくなく、1 つの要素の値が異なります。したがって、Arrays.equals() メソッドで比較すると、「2 つの配列は等しくない!」と出力されます。
比較される配列に null が含まれる場合、比較中に NullPointerException が発生することに注意してください。この場合、例えば
int[] array1 = {1, 2, 3}; int[] array2 = null; boolean result = false; if(array1 == null && array2 == null) { result = true; } else if(array1 == null || array2 == null) { result = false; } else { result = Arrays.equals(array1, array2); } if(result) { System.out.println("两个数组相等!"); } else { System.out.println("两个数组不相等!"); }
というような特別な判定文を追加することで処理することができます。上記のコードでは、まず array1 と array2 が空かどうかを判定し、両方とも空の場合は、これら 2 つの配列は等しいです。そのうちの 1 つが空の場合、2 つの配列は等しくないとみなされます。そうでない場合は、Arrays.equals() メソッドによって等しいかどうかが判断されます。
上記は、2 つの配列が等しいかどうかを比較する Java の Arrays.equals() メソッドの方法と使用法についての詳細な紹介です。実際の開発においては、プログラマが状況に応じて柔軟にこの方法を利用できるため、開発の効率化と利便性が向上します。
以上がJava の Arrays.equals() メソッドは、2 つの配列が等しいかどうかをどのように比較しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。