Javaちょこっとリファレンス
HOME > 配列をソートする

配列をソートする

配列をソートしたい時には、java.util.Arraysクラスのsortメソッドを使うと簡単にできます。
また、Arrays.sortメソッドはstaticなので、Arraysクラスのnewは不要です。

このメソッドを使うと、ソート前の並び順はなくなります。

int配列をソートする

int配列のソートサンプル
import java.util.Arrays;

public class ArraySortSample {
  public static void main(String args[]){

    //int配列を作成する
    int[] a = {3, 2, 8, 1, 9};

    //ソート前の配列の中身を表示する
    System.out.println("*** ソート前 ***");
    System.out.println(Arrays.toString(a));

    //配列をソートする
    Arrays.sort(a);

    //ソート後の配列の中身を表示する
    System.out.println("*** ソート後 ***");
    System.out.println(Arrays.toString(a));

  }
}
実行結果
C:\>java ArraySortSample *** ソート前 *** [3, 2, 8, 1, 9] *** ソート後 *** [1, 2, 3, 8, 9]

String配列をソートする

String配列のソートサンプル
import java.util.Arrays;

public class ArraySortSample2 {
  public static void main(String args[]) {

    //String配列を作成する
    String[] a = {"BB", "AA", "BA", "AB"};

    //ソート前の配列の中身を表示する
    System.out.println("*** ソート前 ***");
    System.out.println(Arrays.toString(a));

    //配列をソートする
    Arrays.sort(a);

    //ソート後の配列の中身を表示する
    System.out.println("*** ソート後 ***");
    System.out.println(Arrays.toString(a));

  }
}
実行結果
C:\>java ArraySortSample2 *** ソート前 *** [BB, AA, BA, AB] *** ソート後 *** [AA, AB, BA, BB]

主要メソッド

sortメソッドは、どの型の配列でも使えるように定義されています。
また、指定した範囲のみ値をソートするメソッドも用意されています。

【java.util.Arraysクラスのsortメソッド】
戻値型メソッド説明
voidsort(byte[] a)ソートメソッドbyte配列版
voidsort(byte[] a, int f, int t)fからtの間の要素のみソートする
voidsort(short[] a)ソートメソッドshort配列版
voidsort(short[] a, int f, int t)fからtの間の要素のみソートする
voidsort(int[] a)ソートメソッドint配列版
voidsort(int[] a, int f, int t)fからtの間の要素のみソートする
voidsort(long[] a)ソートメソッドlong配列版
voidsort(long[] a, int f, int t)fからtの間の要素のみソートする
voidsort(float[] a)ソートメソッドfloat配列版
voidsort(float[] a, int f, int t)fからtの間の要素のみソートする
voidsort(double[] a)ソートメソッドdouble配列版
voidsort(double[] a, int f, int t)fからtの間の要素のみソートする
voidsort(boolean[] a)ソートメソッドboolean配列版
voidsort(boolean[] a, int f, int t)fからtの間の要素のみソートする
voidsort(char[] a)ソートメソッドchar配列版
voidsort(char[] a, int f, int t)fからtの間の要素のみソートする
voidsort(Object[] a)ソートメソッドObject配列版
voidsort(Object[] a, int f, int t)fからtの間の要素のみソートする

配列カテゴリ

HOMEへ戻る TOPへ戻る