对一个集合中的对象进行排序,根据对象的某个指标的大小进行升序或降序排序。代码如下:

// 进行降序排列Collections.sort(list, new Comparator<ResultTypeDesc>() {public int compare(ResultTypeDesc o1, ResultTypeDesc o2) { return o2.getRatio().compareTo(o1.getRatio()); } });
// 进行升序排列Collections.sort(list, new Comparator<ResultTypeDesc>() {public int compare(ResultTypeDesc o1, ResultTypeDesc o2) { return o1.getRatio().compareTo(o2.getRatio()); } });

经过测试发现,只需要把两个对象的位置调换一下即可升序或降序。

如果指标相同,根据多个指标进行排序,需创建一个比较器:

import java.util.*;public class ComparatorResultType implements Comparator{ public int compare(Object arg0, Object arg1) { ResultTypeDesc desc0=(ResultTypeDesc)arg0; ResultTypeDesc desc1=(ResultTypeDesc)arg1; //首先比较主指标,如果主指标相同,则比较次指标 int flag=desc0.getXXX().compareTo(desc1.getXXX()); if(flag==0){ return desc0.getXXX2().compareTo(desc1.getXXX2()); }else{ return flag; } } } //测试类中代码: ComparatorResultType comparator=new ComparatorResultType(); Collections.sort(list, comparator); 

对list集合进行逆输出:

Collections.reverse(list);

ResultTypeDesc这个为所需的实体类对象,具体使用结合自己代码情况即可。

此方法有可能报空指针,自己结合情况,自行解决,判断是否为NULL。

转载于:https://www.cnblogs.com/telwanggs/p/7772597.html

JAVA对list集合进行排序Collections.sort()相关推荐

  1. JAVA-List排序-Collections.sort()-对象数组(集合)根据某一属性排序

    JAVA-List排序-Collections.sort() 当我们想对一个对象数组(集合)根据某一属性进行排序时,我们可以使用list中的Collection.sort(),这是一种较快捷的方式. ...

  2. Java对List集合进行排序

    这几天做题刚好遇到对List集合排序的题,发现一种好用的方法,做一个笔记. 我是基于spring,对于刚学java的小伙伴可以直接在main方法中去完成. 第一步 创建一个实体类对象User pack ...

  3. Java实现TreeMap集合的排序:Key键的升序与降序、Value值的排序

    Java 提供的 Map 接口常用的实现类有 HashMap 和 TreeMap.HashMap 类实现的 Map 集合对于添加和删除映射关系效率更高.HashMap 通过哈希码对其内部的映射关系进行 ...

  4. 深入分析集合List的排序Collections.sort

    List接口本身未提供sort的方法. 在jdk中提供了一个集合操作工具类Collections来操作集合. 查看Collections类,可以发下如下两个方法: static <T exten ...

  5. java List 排序 Collections.sort() 对 List 排序

    2019独角兽企业重金招聘Python工程师标准>>> //一个POJO例子 class User {  String name;  String age;    public Us ...

  6. 集合排序 Collections.sort用法

    大半夜,一同学来问这段代码.问了三个问题. 一,这个排序Sort()怎么用?  二,接口作为方法的参数是什么意思? 三,入参直接new Comparator(){}是怎么回事? 先回答第二,三个问题: ...

  7. JAVA中的集合与排序

    一:常见的集合类 Collection接口  和   Map接口 Collection ①:collection是最常见的集合的上级接口. ②:继承自collection的常用接口有List,Set, ...

  8. ht-8 对arrayList中的自定义对象排序( Collections.sort(ListT list, Comparator? super T c))...

    1 package com.iotek.set; 2 3 import java.util.ArrayList; 4 import java.util.Collections; 5 import ja ...

  9. list排序(Collections.sort())

    Collections.sort(userList, new Comparator<User>() {@Overridepublic int compare(User o1,User o2 ...

最新文章

  1. php 5.4.36 sqlserver,PHP:PHP5.4连接SQLSERVER
  2. 7.3 GROUP BY的“新”功能
  3. 落地三大产业,深耕两个领域,百度AI的这一年|李彦宏乌镇行
  4. 学习JavaScript你必须掌握的8大知识点
  5. 1431. Kids With the Greatest Number of Candies
  6. 期待已久的VS2008 SP1 和.NET FRAMEWORK 3.5 SP1都出来了
  7. Java System类runFinalization()方法及示例
  8. 什么C++程序员,什么Java程序员
  9. python划分训练集和测试集_杨涛的Python机器学习3:单特征与多特征、训练集与测试集,杨桃...
  10. 【java基础知识】编写数据库连接池
  11. DDL/DML/DCL/TCL基本概念
  12. css系统自带字体_CSS系统字体
  13. c语言程序32位,turbo c语言下载
  14. 【C语言】VSCode配置C语言开发环境(详细图文)
  15. Cisco 模拟器rstp生成树
  16. 产品读书《Facebook效应:看Facebook如何打造无与伦比的社交帝国》
  17. 计算机键盘按键错乱,笔记本键盘按键错乱怎么办 解决笔记本电脑个别按键功能错乱...
  18. SQL :Date 函数
  19. leetcode 有效的括号
  20. deepin linux 安装Clion 以及系统配置

热门文章

  1. php把字符串变成多组,php把字符串变成数组(有分隔符)
  2. (62)SPI外设驱动协议(一)(第13天)
  3. (13)System Verilog随机数组
  4. (09)FPGA时序分析模型
  5. FPGA存储器DDR5简介
  6. server sql 无法从long转为int_MySQL中,21个写SQL的好习惯(修正版)
  7. vue 复制 长按_Vue
  8. 东财计算机应用基础单元作业,东财21春《计算机应用基础》单元作业一 【标准答案】...
  9. java访问mysql_Java访问数据库
  10. 深入理解ARM体系架构(S3C6410)---lcd 显示图片