Java 列表排序
在 Java 中对列表进行排序
在前面的章节中,您学习了如何使用 Java 中两种流行的列表:ArrayList 和 LinkedList,它们都位于 java.util 包中。
java.util 包中的另一个有用的类是 Collections 类,它包含了用于按字母顺序或数字顺序对列表进行排序的 sort() 方法。
对 ArrayList 进行排序
按字母升序对字符串 ArrayList 进行排序:
实例
import java.util.ArrayList;
import java.util.Collections; // 导入 Collections 类
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
cars.add("Volvo");
cars.add("BMW");
cars.add("Ford");
cars.add("Mazda");
Collections.sort(cars); // 对 cars 进行排序
for (String car : cars) {
System.out.println(car);
}
}
}
按数字升序对整数 ArrayList 进行排序:
实例
import java.util.ArrayList;
import java.util.Collections; // 导入 Collections 类
public class Main {
public static void main(String[] args) {
ArrayList<Integer> myNumbers = new ArrayList<Integer>();
myNumbers.add(33);
myNumbers.add(15);
myNumbers.add(20);
myNumbers.add(34);
myNumbers.add(8);
myNumbers.add(12);
Collections.sort(myNumbers); // 对 myNumbers 进行排序
for (int number : myNumbers) {
System.out.println(number);
}
}
}
逆序排序
您还可以使用 reverseOrder() 方法对列表进行逆序排序。
在下面的例子中,我们按字母逆序/降序对字符串 ArrayList 进行排序:
实例
import java.util.ArrayList;
import java.util.Collections; // 导入 Collections 类
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
cars.add("Volvo");
cars.add("BMW");
cars.add("Ford");
cars.add("Mazda");
Collections.sort(cars, Collections.reverseOrder()); // 对 cars 进行逆序排序
for (String car : cars) {
System.out.println(car);
}
}
}
按数字逆序/降序对整数 ArrayList 进行排序:
实例
import java.util.ArrayList;
import java.util.Collections; // 导入 Collections 类
public class Main {
public static void main(String[] args) {
ArrayList<Integer> myNumbers = new ArrayList<Integer>();
myNumbers.add(33);
myNumbers.add(15);
myNumbers.add(20);
myNumbers.add(34);
myNumbers.add(8);
myNumbers.add(12);
Collections.sort(myNumbers, Collections.reverseOrder()); // 对 myNumbers 进行逆序排序
for (int number : myNumbers) {
System.out.println(number);
}
}
}