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); } } }