java比较器Comparator
1. 实现比较类
public class Comparator implements java.util.Comparator<TaskInfo>{
  @Override
  public int compare(TaskInfo o1, TaskInfo o2) {
    //查验位置
    if(o1.getPriority()==o2.getPriority() && o1.getPriority()==Constants.PRIORITY_HIGH){
      return o1.getCheckPosition().compareTo(o2.getCheckPosition());
    }
    //请求时间早晚
    if(o1.getPriority()==o2.getPriority() && o1.getPriority()!=Constants.PRIORITY_HIGH){
      return (int) (o1.getTimeStamp().getTime()-o2.getTimeStamp().getTime());
    }
    //优先级
    return o1.getPriority()-o2.getPriority();
  }
}
public static final Queue<TaskInfo> REQUESTDISPATCHQUEUE = new PriorityBlockingQueue<>(Constants.ARRAY_SIZE, new Comparator<TaskInfo>() );
2. 直接覆盖
public static final Queue<TaskInfo> REQUESTDISPATCHQUEUE = new PriorityBlockingQueue<>(Constants.ARRAY_SIZE, new Comparator<TaskInfo>() {
  @Override
  public int compare(TaskInfo o1, TaskInfo o2) {
    return o2.getPriority()-o1.getPriority();
  }
});
3. 在entity中实现
public class TaskInfo implements Comparable<TaskInfo>{
  @Override
  public int compareTo(TaskInfo o) {
    return this.checkStage - o.checkStage;
  }
}
List<TaskInfo> listTaskInfo; Collections.sort(listTaskInfo);
java比较器Comparator的更多相关文章
- java比较器Comparator 使用
		
PresonDemo package cn.stat.p5.person.demo; public class PresonDemo implements Comparable { private S ...
 - Java基础--比较器Comparator
		
Comparable接口和Comparator接口都是用来定义集合中的排序的,只是Comparable是在集合内部定义排序的实现,Comparator是在集合外部排序的实现. Comparable 的 ...
 - java集合框架之比较器Comparator、Comparable
		
参考http://how2j.cn/k/collection/collection-comparator-comparable/693.html Comparator 假设Hero有三个属性 name ...
 - java中Comparator比较器顺序问题,源码分析
		
提示: 分析过程是个人的一些理解,如有不对的地方,还请大家见谅,指出错误,共同学习. 源码分析过程中由于我写的注释比较啰嗦.比较多,导致文中源代码不清晰,还请一遍参照源代码,一遍参照本文进行阅读. 原 ...
 - TreeSet的两种实现方法:Comparable和Comparator(Java比较器)
		
Comparable与Comparator实际上是TreeSet集合的两种实现方式,用来实现对象的排序.下边介绍一下两种比较器的使用方法和区别. Comparable称为元素的自然顺序,或者叫做默认顺 ...
 - 小白养成记——Java比较器Comparable和Comparator
		
一.使用情景 1. 调用Arrays.sort()方法或Collections.sort()方法对自定义类的对象排序 以Arrays.sort()为例.假定有如下自定义的Person类 1 publ ...
 - 菜鸡的Java笔记 comparator 比较器
		
1.数组操作类: Arrays 2.两种比较器的使用: Comparable Comparator 3.实现二叉树算法 content (内容) ...
 - Java自定义比较器Comparator
		
1.数字排序 奇数在前,偶数在后.奇数降序,偶数升序.输入:"0,1,2,3,4,5,6,7,8,9" 输出:"9,7,5,3,1,0,2,4,6,8&q ...
 - 【java】实现Interface java.lang.Comparable<T>接口的int compareTo(T o)方法实现对象数组或链表或集合的排序,和挽救式对象比较器Interface java.util.Comparator<T>
		
package 对象比较排序; import java.util.Arrays; class A implements Comparable<A>{ private String name ...
 
随机推荐
- 【嵌入式】ARM9复习
			
一.嵌入式系统基础 二.ARM处理器 1. 在每条指令后,用;//注释这条指令的寻址方式,以及实现的功能(25分) 注:变址寻址需要标注是基址加偏移.还是基址加索引,是前变址还是后变址.SUB SP, ...
 - Centos610无桌面安装VSFTP
			
1.检查可以安装的VSFTP版本 yum search vsftp 2.开始安装VSFTP yum install -y vsftpd 3.配置说明 cd /etc/vsftpd vsftpd.con ...
 - Python爬虫老是被封的解决方法【面试必问】
			
在爬取的过程中难免发生 ip 被封和 403 错误等等,这都是网站检测出你是爬虫而进行反爬措施,在这里为大家总结一下 Python 爬虫动态 ip 代理防止被封的方法. PS:另外很多人在学习Pyth ...
 - Cosmetic Bottles - Cosmetic Packaging: What Are The Characteristics Of Trends?
			
There are certain differences in products, of which cosmetics are the most obvious. In addition to t ...
 - 【代码总结】SQL语句设计
			
1.根据空值(NULL)检索条件 select * from user where age is not null; //查询年龄为null的所有用户 2.使用IN进行范围对比查询 ,5的所有用户 , ...
 - Linux 常用命令——解压缩文件
			
tar 解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)———————————————.gz解压1:gunz ...
 - 23 JavaScript规范与最佳实践&性能&箭头函数
			
大多数web服务器(Apache等)对大小写敏感,因此命名注意大小写 不要声明字符串.数字和布尔值,始终把他们看做原始值而非对象,如果把这些声明为对象,会拖慢执行速度 对象是无法比较的,原始值可以 不 ...
 - hbase(待完善)
			
1. 应用 <1> hbase解决海量图片存储 <2>
 - Python学习第二十六课——PyMySql(python 链接数据库)
			
Python 链接数据库: 需要先安装pymysql 包 可以设置中安装,也可以pip install pymysql 安装 加载驱动: import pymysql # 需要先安装pymysql 包 ...
 - 短信通道——阿里大鱼(java)
			
综述 注:本文写于2017年6月22日升级之后. 使用阿里大鱼发送短信已经成为一种趋势,因为权威,而且价格也比较适中,被越来越多的公司所采用.在介绍阿里大鱼发送短信之前,首先得拥 ...