一.给基本类型列表排序
Collections.sort(intList,new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
// 返回值为int类型,大于0表示正序,小于0表示逆序
return o2-o1;
}
});
二.给自定义类型列表排序
Collections.sort(lista,new Comparator<Object>() //lista为自定义列表,其余的都是固定写法
{
@Override
public int compare(Object o1, Object o2)
{
/*按员工编号正序排序*/
return o1.getEmpno()-o2.getEmpno();
/*按员工编号逆序排序*/
//return o2.getEmpno()-o1.getEmpno();
/*按员工姓名正序排序*/
//return o1.getEname().compareTo(o2.getEname());
/*按员工姓名逆序排序*/
//return o2.getEname().compareTo(o1.getEname());
}
});
o1-o2是正序(1,2,3,,),o2-o1是逆序(,,3,2,1)
原理:
这个方法返回三种 int 类型的值: 负整数,零 ,正整数;
负整数 : 当前对象的值 < 比较对象的值 , 位置排在前;
零 : 当前对象的值 = 比较对象的值 , 位置不变;
正整数 : 当前对象的值 > 比较对象的值 , 位置排在后
博客介绍了Java中列表排序的相关内容,包括基本类型列表和自定义类型列表的排序。还说明了排序时正序和逆序的计算方式,以及排序方法返回值(负整数、零、正整数)所代表的当前对象与比较对象值的大小关系和位置变化原理。
1万+

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



