展开全部

先举个例子

1 2 5 3 6 9 7

从大家的认知来看,上面的数字从小到大为

1 2 3 5  6 7 9

但是如果是一对的字符串或者对象呢?

那么就需要32313133353236313431303231363533e78988e69d8331333335306334Comparator来自定义字符串或对象的比较方法,来排序了。

aa  bb cc  cc  ab

如果你在Comparator中自定义c是大于b   b是大于a的 那么

降序排序就是

aa ab bb cc cc

对于 public int compare(Object arg0, Object arg1)的理解

如果放回1  说明arg0 > arg1  如 2  1

如果放回0  说明arg0 = arg1  如 cc  cc

如果放回-1 说明arg0 < arg1  如 6  7

所以如果你希望

1 2 5 3 6 9 7 的排序变成 离5最接近的先输出那么如下代码(降序)public int compare(Object arg0, Object arg1) {

Integer cd1 = (Integer)arg0;

Integer cd2 = (Integer)arg1;

if (Math.abs(5-cd1)-Math.abs(5-cd2)>0)

return 1;

if (Math.abs(5-cd1)-Math.abs(5-cd2)==0)

return 0;

if (Math.abs(5-cd1)-Math.abs(5-cd2)<0)

return -1;

}

java compare排序_java compare 降序/升序怎么确定相关推荐

  1. java comparable排序_java 实现Comparable接口排序,升序、降序、倒叙

    本人由于项目开发中需要对查询结果list进行排序,这里根据的是每一个对象中的创建时间降序排序.本人讲解不深,只实现目的,如需理解原理还需查阅更深的资料. 1.实现的效果 2.创建排序的对象 packa ...

  2. 【Java Collections类:sort()升序排序、reverse()降序排序、copy()复制、fill()填充题】

    正向排序 使用 Collections 类的静态方法 sort() 可以对集合中的元素进行升序排序.这要求列表中的所有元素都必须实现 Comparable 接口,而且所有元素都必须是使用指定比较器可相 ...

  3. [转载] java排序compareTo:降序输出学生成绩

    参考链接: Java程序的输出| 18(重写Override) 一道简单程序题: 编写一个程序,输入学生的姓名.分数信息,要求程序按照成绩降序排序后并输出. 实现方法有很多 方法一 public cl ...

  4. java 汉字排序_java实现中文汉字的首字母排序

    java中可以排序的工具类和接口共有五个SortedMap .SortedSet.TreeMap .TreeSet和Collections,Collections中需要显式调用sort()方法. 事例 ...

  5. java set排序_Java Set元素 排序

    Set排序 set包括HashSet和TreeSet,HashSet是基于HashMap的,TreeSet是基于TreeMap的. TreeMap是用红黑树实现,天然就具有排序功能,"天然就 ...

  6. java基础排序_Java排序算法-Java入门|Java基础课程

    1. 课程目标排序是任何语言都会使用到的功能之一,然成果排序的算法有很多,对空间的要求及其时间效率也不尽相同. 本文章以Java语言示例,通过对空间要求.时间效率要求,来对比各种排序算法的使用场景 2 ...

  7. java linkedlist排序_Java LinkedList排序

    首页 > 基础教程 > 集合框架 > LinkedList类 Java LinkedList排序 LinkedList通过Collections.sort进行排序,代码如下: 降序 ...

  8. java list 排序_java list排序

    java list 排序主要用到: Collections.sort方法: package com.tom.compare; import java.util.ArrayList; import ja ...

  9. java keyset 排序_JAVA中KEYSET()返回值的排序问题

    上回说到,由于对数据进行处理的时候是按照乱序一行一行的处理,导致并行线程各自占据了一部分数据,谁也不肯释放,从而发生死锁. 为什么会乱序,是因为取得数据行主键的时候,使用了HashMap.keySet ...

最新文章

  1. 港科大硕士ICCV 论文涉嫌抄袭,导师回应,二作已申请撤稿
  2. 腾讯绝地求生手游席卷全球,104个国家地区IOS登顶
  3. html语义化练习易牛课堂代码
  4. deinstall 卸载grid_卸载Oracle 11g的Grid小计
  5. 对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。
  6. python enumeration_如何在python中将int转换为Enum?
  7. 做一个关于我和她微信聊天记录的爱心词云图
  8. python父亲节礼物送什么_父亲节送什么礼物给父亲呢?
  9. Struts2 - Action no cache
  10. UART、RS232、RS485协议
  11. 安捷伦色质谱仪维修四极杆驱动器维修G2571
  12. 加不了buff的BuffX,还能让年轻人买单多久?
  13. 计算机磁盘怎么清理,电脑磁盘已满怎么清理_电脑磁盘不足怎么清理
  14. HashMap与ConcurrentHashMap面试要点
  15. Autosar MCAL-ICU输入捕获
  16. 计算机的分区原理,电脑真的需要分区吗?别被“常识”骗了
  17. libreCAD使用
  18. word如何添加页码
  19. Eureka常见问题解答
  20. 《HTML5 2D游戏编程核心技术》——第1章,第1.5节开始Snail Bait游戏编程

热门文章

  1. 2017数学建模总结
  2. 浪潮联手宽邦科技助推金融行业智慧化转型,践行“T计划”共建AI服务生态丨Xtecher 观察
  3. android wear无法连接华为手表,华为手表2 NFC功能不可用? Android Wear 2.0
  4. 渗透测试-文件包含漏洞
  5. 多级缓存架构还没听过?分布式多级缓存架构知识大瓶装,25 张图打包拎走
  6. VS2013链接MYSQL数据库
  7. 游戏建模,选择自学还是机构?
  8. Linux下定时执行shell脚本
  9. 非计算机系可以学习Python嘛,有什么建议?
  10. 96、计算一串字符中有多少个单词