public class ComparatorDemo01 {public static void main(String[] args) {ArrayList list = new ArrayList<>();list.add(1);list.add(3);list.add(2);System.out.println(list);Collections.sort(list, new Comparator() {// 重写比较的规则@Overridepublic int compare(Integer o1, Integer o2) {return o1 - o2; // 升序//return o2 - o1; // 降序}});System.out.println(list);ArrayList list2 = new ArrayList<>();list2.add(new CollectionsDemo01.Student("张三", 18));list2.add(new CollectionsDemo01.Student("李四", 20));list2.add(new CollectionsDemo01.Student("b王五", 15));list2.add(new CollectionsDemo01.Student("a李六", 15));System.out.println(list2);Collections.sort(list2, new Comparator() {@Overridepublic int compare(CollectionsDemo01.Student o1, CollectionsDemo01.Student o2) {int result = o1.getAge() - o2.getAge();// 如果两个人的年龄是一样的 , 就用姓名的第一字比较规则if (result == 0) {return o1.getName().charAt(0) - o2.getName().charAt(0);}return result;}});System.out.println(list2);}static class Student {private String name;private int age;public Student() {}public Student(String name, int age) {this.name = name;this.age = age;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}@Overridepublic String toString() {return "Student{" +"name='" + name + '\'' +", age=" + age +'}';}}}复制代码
五、小结集合第二部分中我们讲了 List 集合、 Set 集合和 Collections 集合工具类 , 下一节我们讲 Map 集合和一个综合案例 。
【Java集合Set 集合、List和Collections类】作者:萌果爱吃柠檬链接:来源:掘金著作权归作者所有 。 商业转载请联系作者获得授权 , 非商业转载请注明出处 。