正常情况下集合中封装的是某种类型的数据对象,那怎样对这个集合进行排序呢?下面来看看这一小段代码:
解释说明:
dsList: 是一个List集合
TestVO:是集合中的数据对象的类型,即泛型
ds1:TestVO的一个对象
ds2:TestVO 的一个对象
compartor:源码的解释很简单: 就是一个比较大小,返回正负零。/** Compares its two arguments for order. Returns a negative integer,zero, or a positive integer as the first argument is less than, equal to, or greater than the second.
在匿名类里重写父类的方法compare,返回两个对象属性的比较值
我们跟踪Collections.sort的源码可以知道,Arrays的mergeSort方法调用了compare方法,这样根据判断大小来返回重新排序的list集合。
正常情况下集合中封装的是某种类型的数据对象,那怎样对这个集合进行排序呢?下面来看看这一小段代码:
Collections.sort(dsList, new Comparator<TestVO>() {
public int compare(TestVO ds1,TestVO ds2) {
return ds1.getName().compareTo(ds2.getName());
}
}); 解释说明:
dsList: 是一个List集合
TestVO:是集合中的数据对象的类型,即泛型
ds1:TestVO的一个对象
ds2:TestVO 的一个对象
compartor:源码的解释很简单: 就是一个比较大小,返回正负零。/** Compares its two arguments for order. Returns a negative integer,zero, or a positive integer as the first argument is less than, equal to, or greater than the second.
在匿名类里重写父类的方法compare,返回两个对象属性的比较值
我们跟踪Collections.sort的源码可以知道,Arrays的mergeSort方法调用了compare方法,这样根据判断大小来返回重新排序的list集合。
正常情况下集合中封装的是某种类型的数据对象,那怎样对这个集合进行排序呢?下面来看看这一小段代码:
本文介绍了一种使用Java对自定义对象集合进行排序的方法。通过实现Comparator接口,并重写compare方法来对比对象属性,最终实现了按对象属性排序的功能。
3174

被折叠的 条评论
为什么被折叠?



