java Collections.sort

一.给基本类型列表排序

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 类型的值: 负整数,零 ,正整数;
负整数 : 当前对象的值 < 比较对象的值 , 位置排在前;
零 : 当前对象的值 = 比较对象的值 , 位置不变;
正整数 : 当前对象的值 > 比较对象的值 , 位置排在后

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值