🎯

【Java】Arraysクラスに属するメソッド

2024/02/06に公開

Arrays.toString()

配列の文字列表現を返します。

int[] ar = {1, 2, 3};
// Arrays.toString()
System.out.println(Arrays.toString(ar)); // 出力結果 -> [1, 2, 3]

Arrays.deepToString()

多次元配列の文字列表現を返します。

int[][] ar = {{0, 0, 0}, {1, 2, 3}};
// Arrays.deepToString()
System.out.println(Arrays.deepToString(ar)); // 出力結果 -> [[0, 0, 0], [1, 2, 3]]

Arrays.equals()

2つの配列の、要素数・要素の値・要素の順序全てが等しいかどうかを判定します。
全てが等しければtrue、等しくなければfalseを返します。

int[] ar1 = {1, 2, 3};
int[] ar2 = {1, 2, 3};
// Arrays.equals()
System.out.println(Arrays.equals(ar1, ar2)); // 出力結果 -> true

Arrays.copyOf()

指定された要素数になるよう配列をコピーして、要素数に過不足があれば、切り詰められたり、デフォルト値で埋められます。

String[] ar = {"a", "b", "c"};
// Arrays.copyOf
String[] ar3 = Arrays.copyOf(ar, 3);
String[] ar2 = Arrays.copyOf(ar, 2);
String[] ar4 = Arrays.copyOf(ar, 4);

System.out.println(Arrays.toString(ar3)); // 出力結果 -> [a, b, c]
System.out.println(Arrays.toString(ar2)); // 出力結果 -> [a, b] (切り詰め)
System.out.println(Arrays.toString(ar4)); // 出力結果 -> [a, b, c, null] (デフォルト値)

Arrays.fill()

配列の全ての要素に指定された値を埋めます。

String[] ar = new String[3];
// Arrays.fill
Arrays.fill(ar, "fuzi");

System.out.println(Arrays.toString(ar)); // 出力結果 -> [fuzi, fuzi, fuzi]

Arrays.sort()

配列の要素を昇順に並べ替えます。

String[] ar = {"b", "c", "a"};
// Arrays.sort
Arrays.sort(ar);

System.out.println(Arrays.toString(ar)); // 出力結果 -> [a, b, c]

Arrays.binarySearch()

配列の中に指定した要素がある場合は、そのインデックスが返されます。
指定した要素がない場合は、挿入されるべき位置を表す挿入ポイントが負の値で返されます。

インデックス:0番目、1番目、2番目
挿入ポイント:-1番目、-2番目、-3番目

String[] ar = {"b", "c", "a"};

// ソートしない場合のArrays.binarySearch
System.out.println(Arrays.binarySearch(ar, "a")); // 出力結果 -> -1

// ソートした場合Arrays.binarySearch
Arrays.sort(ar);
System.out.println(Arrays.binarySearch(ar, "a")); // 出力結果 -> 0

Discussion