java compare排序_java compare 降序/升序怎么确定
展开全部
先举个例子
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 降序/升序怎么确定相关推荐
- java comparable排序_java 实现Comparable接口排序,升序、降序、倒叙
本人由于项目开发中需要对查询结果list进行排序,这里根据的是每一个对象中的创建时间降序排序.本人讲解不深,只实现目的,如需理解原理还需查阅更深的资料. 1.实现的效果 2.创建排序的对象 packa ...
- 【Java Collections类:sort()升序排序、reverse()降序排序、copy()复制、fill()填充题】
正向排序 使用 Collections 类的静态方法 sort() 可以对集合中的元素进行升序排序.这要求列表中的所有元素都必须实现 Comparable 接口,而且所有元素都必须是使用指定比较器可相 ...
- [转载] java排序compareTo:降序输出学生成绩
参考链接: Java程序的输出| 18(重写Override) 一道简单程序题: 编写一个程序,输入学生的姓名.分数信息,要求程序按照成绩降序排序后并输出. 实现方法有很多 方法一 public cl ...
- java 汉字排序_java实现中文汉字的首字母排序
java中可以排序的工具类和接口共有五个SortedMap .SortedSet.TreeMap .TreeSet和Collections,Collections中需要显式调用sort()方法. 事例 ...
- java set排序_Java Set元素 排序
Set排序 set包括HashSet和TreeSet,HashSet是基于HashMap的,TreeSet是基于TreeMap的. TreeMap是用红黑树实现,天然就具有排序功能,"天然就 ...
- java基础排序_Java排序算法-Java入门|Java基础课程
1. 课程目标排序是任何语言都会使用到的功能之一,然成果排序的算法有很多,对空间的要求及其时间效率也不尽相同. 本文章以Java语言示例,通过对空间要求.时间效率要求,来对比各种排序算法的使用场景 2 ...
- java linkedlist排序_Java LinkedList排序
首页 > 基础教程 > 集合框架 > LinkedList类 Java LinkedList排序 LinkedList通过Collections.sort进行排序,代码如下: 降序 ...
- java list 排序_java list排序
java list 排序主要用到: Collections.sort方法: package com.tom.compare; import java.util.ArrayList; import ja ...
- java keyset 排序_JAVA中KEYSET()返回值的排序问题
上回说到,由于对数据进行处理的时候是按照乱序一行一行的处理,导致并行线程各自占据了一部分数据,谁也不肯释放,从而发生死锁. 为什么会乱序,是因为取得数据行主键的时候,使用了HashMap.keySet ...
最新文章
- 港科大硕士ICCV 论文涉嫌抄袭,导师回应,二作已申请撤稿
- 腾讯绝地求生手游席卷全球,104个国家地区IOS登顶
- html语义化练习易牛课堂代码
- deinstall 卸载grid_卸载Oracle 11g的Grid小计
- 对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。
- python enumeration_如何在python中将int转换为Enum?
- 做一个关于我和她微信聊天记录的爱心词云图
- python父亲节礼物送什么_父亲节送什么礼物给父亲呢?
- Struts2 - Action no cache
- UART、RS232、RS485协议
- 安捷伦色质谱仪维修四极杆驱动器维修G2571
- 加不了buff的BuffX,还能让年轻人买单多久?
- 计算机磁盘怎么清理,电脑磁盘已满怎么清理_电脑磁盘不足怎么清理
- HashMap与ConcurrentHashMap面试要点
- Autosar MCAL-ICU输入捕获
- 计算机的分区原理,电脑真的需要分区吗?别被“常识”骗了
- libreCAD使用
- word如何添加页码
- Eureka常见问题解答
- 《HTML5 2D游戏编程核心技术》——第1章,第1.5节开始Snail Bait游戏编程