Erlo

List排序Collections.sort 重写compare

2018-12-07 18:01:41 发布   1121 浏览  
页面报错/反馈
收藏 点赞

 1 static List<Integer> intList = Arrays.asList(2,5,7, 3, 1);
 2 
 3       public static void main(String[] args) { 
 4           
 5           System.out.println("before sort:");
 6             PrintUtil.showList(intList);
 7             System.out.println("=========================");
 8             Collections.sort(intList,new Comparator<Integer>() {
 9 
10                 public int compare(Integer o1, Integer o2) {
11                     // 返回值为int类型,大于0表示正序,小于0表示逆序
12                     System.out.println("o2-o1:"+(o2-o1)+"========o2="+o2+"o1="+o1);
13                     if(o2>o1){
14                         return -1;    
15                     }else{
16                         return 1;    
17                     }
18                 }
19             });
20             System.out.println("after sort:");
21             PrintUtil.showList(intList);
22           
23     }

根据需求排序,方法内比较两个对象的参数哪个优先,返回值为int类型,大于0表示正序,小于0表示逆序

登录查看全部

参与评论

评论留言

还没有评论留言,赶紧来抢楼吧~~

手机查看

返回顶部

给这篇文章打个标签吧~

棒极了 糟糕透顶 好文章 PHP JAVA JS 小程序 Python SEO MySql 确认