【Java】配列のソートの動作確認(昇順・降順)
この記事ではJavaの配列の基本について解説します。
Arrays.sort() | 配列を昇順にソートします |
int[] iheiretu = {3,2,1,5,4}; System.out.println(Arrays.toString(iheiretu)); //配列をソートする Arrays.sort(iheiretu); System.out.println(Arrays.toString(iheiretu)); // 実行結果 [3, 2, 1, 5, 4] [1, 2, 3, 4, 5]
部分的にソートするには第2引数、第3引数にインデックスの範囲を設定することで部分的にソートします。
int[] iheiretu = {3,2,1,5,4}; System.out.println(Arrays.toString(iheiretu)); //配列をインデックス指定でソートする Arrays.sort(iheiretu ,0 ,3); System.out.println(Arrays.toString(iheiretu)); // 実行結果 [3, 2, 1, 5, 4] [1, 2, 3, 5, 4]
配列を降順にソートする
Arrays.sortは配列を昇順にソートしますが、降順にはできませんが以下の手順で実装することができます。
- 配列をListに変換
-
Collections.sort(リスト, Collections.reverseOrder()): Listを降順にソート
-
Listを配列に変換
Integer[] iheiretu = {3,2,1,5,4}; System.out.println(Arrays.toString(iheiretu)); // 配列⇒リストへ List<Integer> wklist= Arrays.asList(iheiretu); // 降順でソートする Collections.sort(wklist, Collections.reverseOrder()); // 配列⇒リストへ iheiretu = wklist.toArray(new Integer[wklist.size()]); System.out.println(Arrays.toString(iheiretu)); // 実行結果 [3, 2, 1, 5, 4] [5, 4, 3, 2, 1]
Javaの記事の一覧はJava にまとめてあります