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。
JAVA对list集合进行排序Collections.sort()的更多相关文章
- Java中单列集合List排序的真实应用场景
一.需求描述 最近产品应客户要求提出了一个新的需求,有一个列表查询需要按照其中的多列进行排序. 二.需求分析 由于数据总量不多,可以全部查询出来,因此我就考虑使用集合工具类Collections.so ...
- 对List数组进行排序 Collections.sort(param1,param2)
@SuppressWarnings("unchecked") List<PageData> group_items_list = (List<PageData&g ...
- 用Java集合中的Collections.sort方法对list排序的两种方法
用Collections.sort方法对list排序有两种方法第一种是list中的对象实现Comparable接口,如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ...
- java List 排序 Collections.sort() 对 List 排序
class User { String name; String age; public User(String name,String age){ this.name=name; this.a ...
- java List 排序 Collections.sort()
用Collections.sort方法对list排序有两种方法 第一种是list中的对象实现Comparable接口,如下: /** * 根据order对User排序 */ public class ...
- JAVA中的集合与排序
一:常见的集合类 Collection接口 和 Map接口 Collection ①:collection是最常见的集合的上级接口. ②:继承自collection的常用接口有List,Set, ...
- Java-小技巧-006 List 排序 Collections.sort()
一.数组操作类:Arrays 最早开始使用,查看方法二分查找:public static int binarySearch(数据类型[] a, 数据类型 key) 前提是有序的 equals 先排序 ...
- ht-8 对arrayList中的自定义对象排序( Collections.sort(List<T> list, Comparator<? super T> c))
package com.iotek.set; import java.util.ArrayList; import java.util.Collections; import java.util.Co ...
- sort()排序 collections.sort();
1.main方法: public class Test { public static void main(String[] args) { /** * * sort()方法详解 * 1.Collec ...
随机推荐
- Centos 7.4 配置Tomcat管理员用户
1,进入Tomcat路径下的conf文件夹 ,编辑tomcat-users.xml文件 2,在<tomcat-users>标签中增加user标签,用户名密码随便填写,roles可根据权限需 ...
- BeautifulSoup4模块的使用
1. 安装 pip3 install beautifulsoup42. 使用 from bs4 import BeautifulSoup obj = BeautifulSoup("HTML内 ...
- sqlserver 常用语法
sqlserver查找 table, view, column select * from information_schema.tables where table_schema='bk' sele ...
- WIN2008R2 asp.net core的配置
配置IIS Windows Server上通过“添加角色和功能”,桌面Windows上通过“启用和关闭Windows功能”来安装和配置IIS.确保勾选Web服务和“IIS 管理控制台”: Window ...
- c++ primer 中讲的顶层const 和 底层 const 理解
c++ primer 中讲的 顶层const 和 底层 const 以前没搞懂的顶层const和底层const,这次看了后感觉明白了. 首先,const是一个限定符,被它修饰的变量的值不能改 ...
- VS 开发中觉得不错的几款插件
1.C# Outline 2013 {}折叠 2.Indent Guides:为缩进添加竖直线 3.ResXManager:多语言资源文件编辑 4.C# Formatter:代码清理 5.Highl ...
- 关于TCP 半连接队列和全连接队列
关于TCP 半连接队列和全连接队列 http://jm.taobao.org/2017/05/25/525-1/ 发表于 2017-05-25 | 作者 蛰剑 | 分类于 网络 ...
- Java基础14-多维数组
1.二位数组可以看成以数组为元素的数组 2.java中多维数组的声明和初始化一样,应该从高维到低维的顺序进行,例如 int[][] a=new int[3][]; a[0]=new int[2]; a ...
- jquery中beforeSend和complete的使用 --- 提高用户体验&&设置请求头
beforeSend方法的用户主要有下面几个: 第一:用于在发送ajax请求之前设置请求头 即作为前端,如果我们希望在发送数据之前设置请求头,就可以像下面这么做: beforeSend: functi ...
- 使用mspaint查看图片像素
图片打码服务,要求对图像验证码进行切图,即具体知道像素的位置,网上搜了yhb-chi但下载不方便. 就想着看看mspaint可不可以,将图片拖到mspaint中: 显示了整张图片的像素大小(100X4 ...