Java 列表排序
Java 列表排序
在前面的章节中,您学习了如何使用 Java 中两个常用的列表:ArrayList
和 LinkedList
,它们都位于 java.util
包中。
java.util
包中另一个有用的类是 Collections
类,它包含用于按字母或数字对列表进行排序的 sort()
方法。
对 ArrayList 进行排序
按字母升序对字符串的 ArrayList 进行排序
示例
import java.util.ArrayList;
import java.util.Collections; // Import the Collections class
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); // Sort cars
for (String i : cars) {
System.out.println(i);
}
}
}
按数字升序对整数的 ArrayList 进行排序
示例
import java.util.ArrayList;
import java.util.Collections; // Import the Collections class
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); // Sort myNumbers
for (int i : myNumbers) {
System.out.println(i);
}
}
}
反转顺序
您还可以使用 reverseOrder()
方法按相反的顺序对列表进行排序。
在下面的示例中,我们按字母逆序/降序对字符串的 ArrayList 进行排序
示例
import java.util.ArrayList;
import java.util.Collections; // Import the Collections class
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()); // Sort myNumbers
for (String i : cars) {
System.out.println(i);
}
}
}
按数字逆序/降序对整数的 ArrayList 进行排序
示例
import java.util.ArrayList;
import java.util.Collections; // Import the Collections class
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()); // Sort myNumbers
for (int i : myNumbers) {
System.out.println(i);
}
}
}