Java List 排序:使用 Collections.sort() 和 Comparator 实现自定义排序
Java 中的 List 可以使用 Collections 类中的 sort 方法进行排序。sort 方法默认按照自然顺序进行排序,如果要按照自定义的规则进行排序,需要提供一个 Comparator。下面是一个示例:
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class ListSortExample {
public static void main(String[] args) {
List<String> list = new ArrayList<>();
list.add('b');
list.add('a');
list.add('c');
// 默认按照自然顺序进行排序
Collections.sort(list);
System.out.println(list); // [a, b, c]
// 按照字符串长度进行排序
Collections.sort(list, new Comparator<String>() {
@Override
public int compare(String o1, String o2) {
return o1.length() - o2.length();
}
});
System.out.println(list); // [a, b, c]
}
}
以上代码中,第一个 sort 方法默认按照自然顺序(即字典序)进行排序,输出结果为 [a, b, c]。第二个 sort 方法使用了一个自定义的 Comparator,按照字符串长度进行排序,输出结果仍然为 [a, b, c],因为三个字符串的长度相同。
原文地址: https://www.cveoy.top/t/topic/lFAu 著作权归作者所有。请勿转载和采集!