JAVA对list集合进行排序Collections.sort()
对一个集合中的对象进行排序,根据对象的某个指标的大小进行升序或降序排序。代码如下:
// 进行降序排列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()相关推荐
- JAVA-List排序-Collections.sort()-对象数组(集合)根据某一属性排序
JAVA-List排序-Collections.sort() 当我们想对一个对象数组(集合)根据某一属性进行排序时,我们可以使用list中的Collection.sort(),这是一种较快捷的方式. ...
- Java对List集合进行排序
这几天做题刚好遇到对List集合排序的题,发现一种好用的方法,做一个笔记. 我是基于spring,对于刚学java的小伙伴可以直接在main方法中去完成. 第一步 创建一个实体类对象User pack ...
- Java实现TreeMap集合的排序:Key键的升序与降序、Value值的排序
Java 提供的 Map 接口常用的实现类有 HashMap 和 TreeMap.HashMap 类实现的 Map 集合对于添加和删除映射关系效率更高.HashMap 通过哈希码对其内部的映射关系进行 ...
- 深入分析集合List的排序Collections.sort
List接口本身未提供sort的方法. 在jdk中提供了一个集合操作工具类Collections来操作集合. 查看Collections类,可以发下如下两个方法: static <T exten ...
- java List 排序 Collections.sort() 对 List 排序
2019独角兽企业重金招聘Python工程师标准>>> //一个POJO例子 class User { String name; String age; public Us ...
- 集合排序 Collections.sort用法
大半夜,一同学来问这段代码.问了三个问题. 一,这个排序Sort()怎么用? 二,接口作为方法的参数是什么意思? 三,入参直接new Comparator(){}是怎么回事? 先回答第二,三个问题: ...
- JAVA中的集合与排序
一:常见的集合类 Collection接口 和 Map接口 Collection ①:collection是最常见的集合的上级接口. ②:继承自collection的常用接口有List,Set, ...
- 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 ...
- list排序(Collections.sort())
Collections.sort(userList, new Comparator<User>() {@Overridepublic int compare(User o1,User o2 ...
最新文章
- php 5.4.36 sqlserver,PHP:PHP5.4连接SQLSERVER
- 7.3 GROUP BY的“新”功能
- 落地三大产业,深耕两个领域,百度AI的这一年|李彦宏乌镇行
- 学习JavaScript你必须掌握的8大知识点
- 1431. Kids With the Greatest Number of Candies
- 期待已久的VS2008 SP1 和.NET FRAMEWORK 3.5 SP1都出来了
- Java System类runFinalization()方法及示例
- 什么C++程序员,什么Java程序员
- python划分训练集和测试集_杨涛的Python机器学习3:单特征与多特征、训练集与测试集,杨桃...
- 【java基础知识】编写数据库连接池
- DDL/DML/DCL/TCL基本概念
- css系统自带字体_CSS系统字体
- c语言程序32位,turbo c语言下载
- 【C语言】VSCode配置C语言开发环境(详细图文)
- Cisco 模拟器rstp生成树
- 产品读书《Facebook效应:看Facebook如何打造无与伦比的社交帝国》
- 计算机键盘按键错乱,笔记本键盘按键错乱怎么办 解决笔记本电脑个别按键功能错乱...
- SQL :Date 函数
- leetcode 有效的括号
- deepin linux 安装Clion 以及系统配置
热门文章
- php把字符串变成多组,php把字符串变成数组(有分隔符)
- (62)SPI外设驱动协议(一)(第13天)
- (13)System Verilog随机数组
- (09)FPGA时序分析模型
- FPGA存储器DDR5简介
- server sql 无法从long转为int_MySQL中,21个写SQL的好习惯(修正版)
- vue 复制 长按_Vue
- 东财计算机应用基础单元作业,东财21春《计算机应用基础》单元作业一 【标准答案】...
- java访问mysql_Java访问数据库
- 深入理解ARM体系架构(S3C6410)---lcd 显示图片