A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© HuaMuLan 中级黑马   /  2016-6-11 22:15  /  712 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

public class TestComparator {  
    public static void main(String[] args) {  
          List<Integer> listnum = new ArrayList<Integer>();  
          listnum.add(1);  
          listnum.add(2);  
          listnum.add(3);  
          listnum.add(4);  
          listnum.add(5);  
            
          System.out.println("升序排序测试:");  
          Comparator<Integer> ascComparator = new NumComparator();//NumComparator自定义的另外一个类,用来判断两数之间的大小   
          Collections.sort(listnum, ascComparator);  
          for (int i = 0; i < listnum.size(); i++) {  
            System.out.print(listnum.get(i) + " ");  
          }  
            
          System.out.println("\n降序排序测试:");  
          Comparator<Integer> descComparator = Collections.reverseOrder(ascComparator);  
          Collections.sort(listnum, descComparator);  
          for (int i = 0; i < listnum.size(); i++) {  
            System.out.print(listnum.get(i) + " ");  
        }  
    }     
}  
class NumComparator implements Comparator<Integer> {  
    public int compare(Integer o1, Integer o2) {  
        return o1 - o2;  
    }  
}  
结果:

升序排序测试:
1 2 3 4 5
降序排序测试:
5 4 3 2 1

1 个回复

倒序浏览
不错不错
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马