Java集合排序经常在Java编程中使用到,下面详解2种常用的Java集合排序方式@mikechen
1.Collections.sort()方法对集合进行排序
Java可以使用Collections.sort()方法对集合进行排序,如下所示:
List<Integer> numList = new ArrayList<>(); numList.add(5); numList.add(2); numList.add(9); numList.add(1); numList.add(7); //Java集合排序 Collections.sort(numList);
这会将集合中的元素按照升序排列,如果想要按照降序排列,可以使用Collections.reverse()方法。
Collections.sort(numList, Collections.reverseOrder());
2.实现Comparable接口自定义排序
Collections.sort()方法只能对实现了Comparable接口的对象进行排序。
如果要对自定义的对象进行排序,可以让它实现Comparable接口并重写compareTo()方法。
如下所示:
public class Person implements Comparable<Person> { private String name; private int age; public Person(String name, int age) { this.name = name; this.age = age; } public String getName() { return name; } public int getAge() { return age; } @Override public int compareTo(Person other) { return this.age - other.age; } }
我们可以自定义排序,对Person对象按照年龄进行排序。
如下所示:
List<Person> personList = new ArrayList<>(); personList.add(new Person("Alice", 25)); personList.add(new Person("Bob", 30)); personList.add(new Person("Charlie", 20)); Collections.sort(personList);
这会将personList按照年龄升序排列,如果要按照其他属性进行排序,可以修改compareTo()方法的实现。
以上就是2种常用的Java结合排序详解,更多Java集合,请查看:Java集合(万字图文全面详解)
mikechen睿哥
mikechen睿哥,十余年BAT架构经验,资深技术专家,就职于阿里、淘宝、百度等一线互联网大厂。
关注「mikechen」公众号,获取更多技术干货!
后台回复【面试】即可获取《史上最全阿里Java面试题总结》,后台回复【架构】,即可获取《阿里架构师进阶专题全部合集》