概要
Javaで「2つの配列の要素の値を比較する(equals,deepEquals)」の動作を確認してみました。
以下のページを参考にしました。
実装
以下のファイルを作成しました。
JSample11_1.java
import java.util.Arrays;
class JSample11_1{
public static void main(String[] args){
int[] a = {85, 78, 92};
int[] b = a;
int[] c = {85, 78, 92};
System.out.println(a == b);
System.out.println(a == c);
System.out.println(b == c);
System.out.println(Arrays.equals(a, b));
System.out.println(Arrays.equals(a, c));
System.out.println(Arrays.equals(b, c));
}
}
JSample11_2.java
import java.util.Arrays;
class JSample11_2{
public static void main(String[] args){
int[][] a = {{10, 8} ,{9, 14}};
int[][] b = a;
int[][] c = {{10, 8}, {9, 14}};
System.out.println(Arrays.equals(a, b));
System.out.println(Arrays.equals(a, c));
System.out.println(Arrays.equals(b, c));
System.out.println(Arrays.deepEquals(a, b));
System.out.println(Arrays.deepEquals(a, c));
System.out.println(Arrays.deepEquals(b, c));
}
}
以下のコマンドを実行しました。
$ javac JSample11_1.java
$ java JSample11_1
true
false
false
true
true
true
$ javac JSample11_2.java
$ java JSample11_2
true
false
false
true
true
true
まとめ
何かの役に立てばと。