对List进行排序
如果我有一个纯数字或者字符串的List或者数组,可以通过 Collections 和 Arrays 的 sort 函数对其进行排序,会按照由小到大或者字母表的顺序进行排列
1 | //数组 |
对Object进行排序
如果不是String 而是Object怎么办
例如PersonObject
如果我有一个Person的类,然后其List
1 | class Person { |
两种排序方法
- Collections.sort(List
list): 可以对实现了Comparable接口的Object进行排序,上文的String和Integer使用的就是该函数 - Collections.sort(List
list, Comparator<? super T> c): 或者对某个Object T自定义一个Comparator
两者都有一个Compare相关的函数,可以返回Int值
- return 1: 对象后移,一般意义上的较大的数
- return -1: 对象迁移,一般意义上的较小的数
- return 0: 对象位置不变,一般意义上的相等
实现Comparable
1 | class Person implements Comparable<Person> { |
实现Comparator
1 | Comparator<Person> comparator = new Comparator<Person>() { |