在Java中,可以使用Collections.sort()
方法对集合进行排序。这个方法可以对List集合进行自然排序或者根据提供的比较器进行排序。
以下是一些示例:
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<Integer> numbers = new ArrayList<>();
numbers.add(5);
numbers.add(3);
numbers.add(1);
numbers.add(4);
numbers.add(2);
Collections.sort(numbers);
System.out.println("Sorted list: " + numbers);
}
}
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<String> words = new ArrayList<>();
words.add("apple");
words.add("banana");
words.add("cherry");
words.add("orange");
Comparator<String> stringLengthComparator = new Comparator<String>() {
@Override
public int compare(String s1, String s2) {
return Integer.compare(s1.length(), s2.length());
}
};
Collections.sort(words, stringLengthComparator);
System.out.println("Sorted list by length: " + words);
}
}
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<String> words = new ArrayList<>();
words.add("apple");
words.add("banana");
words.add("cherry");
words.add("orange");
Collections.sort(words, (s1, s2) -> Integer.compare(s1.length(), s2.length()));
System.out.println("Sorted list by length: " + words);
}
}
注意:Collections.sort()
方法不适用于非可修改的集合(如通过Collections.unmodifiableList()
创建的集合)。在这种情况下,可以使用stream().sorted()
方法创建一个新的已排序列表。