Arrays.sort()のJavaでの使用法

配列をソートするために用いるArrays.sort()メソッド。さまざまな型の配列をソートするための複数のオーバーロードメソッドがあります。

ネイティブなArrays.sort()メソッドには、以下の種類があります。

  1. int[] 型配列 arr を昇順にソートする
  2. int[] arr の fromIndex から toIndex まで (fromIndex を含む、toIndex を含まない) を昇順にソートを行います。
  3. 参照型配列を昇順にソートします。参照型はComparableインタフェースを実装して、compareTo()メソッドをオーバーライドするか、Comparatorコンパレーターを使用してソートする必要があります。
  4. public static void sort(Object[] arr, int fromIndex, int toIndex) : 指定された範囲の参照型配列を昇順でソートします。範囲は fromIndex を含み、toIndex を含まないものとします。

整型配列をソートするサンプルコード:

int[] arr = {5, 2, 9, 1, 3};
Arrays.sort(arr);
for (int i : arr) {
System.out.print(i + " ");
}
// 输出结果:1 2 3 5 9

参照型配列ソートの例:

class Person implements Comparable<Person> {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public int compareTo(Person person) {
return this.age - person.age;
}
public String toString() {
return "Person [name=" + name + ", age=" + age + "]";
}
}
Person[] arr = {new Person("Alice", 20), new Person("Bob", 25), new Person("Charlie", 18)};
Arrays.sort(arr);
for (Person p : arr) {
System.out.println(p);
}
// 输出结果:
// Person [name=Charlie, age=18]
// Person [name=Alice, age=20]
// Person [name=Bob, age=25]

PersonクラスはComparableインターフェースを実装し、compareTo()メソッドを上書きして年齢でソートします。

bannerAds