【 1.对普通的包装类基本数据类型的list数组排序(Integer,Long,Double) 】

Collections.sort(List list)

【例】

List<Long> musicIds = new ArrayList<>();
musicIds.add(, 1l);
musicIds.add(, 10l);
musicIds.add(, 2l);
musicIds.add(, 8l);
musicIds.add(, 4l);
System.out.println("排序前:" + musicIds.toString());
Collections.sort(musicIds);
System.out.println("从小到大排序后:" + musicIds.toString());

【运行结果】

【 2.对普通的对象进行排序,根据对象中的某个成员变量(比如id) 】

public static void sort2(){
List<DataResponse> dataResponseList = Lists.newArrayList();
dataResponseList.add(new DataResponse(1001L,));
dataResponseList.add(new DataResponse(1002L,));
dataResponseList.add(new DataResponse(1003L,));
dataResponseList.add(new DataResponse(1004L, ));
Collections.sort(dataResponseList, new Comparator<DataResponse>() {
@Override
public int compare(DataResponse o1, DataResponse o2) {
return
Integer.compare(o1.dataType, o2.dataType);
}
});
System.out.println("按dataType排序:\n" + dataResponseList.toString()); Collections.sort(dataResponseList, new Comparator<DataResponse>() {
@Override
public int compare(DataResponse o1, DataResponse o2) {
return
Double.compare(o1.dataId,o2.dataId);
}
});

System.out.println("\n按dataId排序:\n"+dataResponseList.toString());
} static class DataResponse{
Long dataId;
Integer dataType; public DataResponse() {
} public DataResponse(Long dataId, Integer dataType) {
this.dataId = dataId;
this.dataType = dataType;
} public Long getDataId() {
return dataId;
} public void setDataId(Long dataId) {
this.dataId = dataId;
} public Integer getDataType() {
return dataType;
} public void setDataType(Integer dataType) {
this.dataType = dataType;
} @Override
public String toString() {
return "DataResponse{" +
"dataId=" + dataId +
", dataType=" + dataType +
'}';
}
}

【运行结果】

Java集合排序的更多相关文章

  1. java 集合排序(转)

    Java API针对集合类型排序提供了两种支持:java.util.Collections.sort(java.util.List)java.util.Collections.sort(java.ut ...

  2. Java集合排序及java集合类详解--(Collection, List, Set, Map)

    1         集合框架 1.1         集合框架概述 1.1.1         容器简介 到目前为止,我们已经学习了如何创建多个不同的对象,定义了这些对象以后,我们就可以利用它们来做一 ...

  3. Java集合排序(面试必考点之一)

    集合是Java面试必考知识点,而集合的排序也是非常重要的,工作中经常用到,那么这个知识点也是必须要掌握的,下面是我曾经面试时被面试官问的问题: 根据API可知,Java集合的工具类Collection ...

  4. java 集合排序

    Java API针对集合类型排序提供了两种支持:java.util.Collections.sort(java.util.List)java.util.Collections.sort(java.ut ...

  5. Java集合排序方法comparable和comparator的总结

    一.概述Comparable和Comparator都是用来实现集合中元素的比较.排序的.Comparable是在集合内部定义的方法实现的排序,位于java.lang下.Comparator是在集合外部 ...

  6. Java集合排序(看完秒懂)

    比如将一个List<Student>排序,则有两种方式: 1:Student实现Comparable接口: 2:给排序方法传递一个Comparator参数: 请看下面的举例: Studen ...

  7. 关于java集合排序

    对于排序,java开发者并不陌生. 为避免以后遗忘,现在再次总结一下! 常见8大排序算法, 平时自己熟悉的只有几种种!冒泡,二分/折半.插入.快排等!现在一一讲解一下,这里只讲思想,暂时不做实现! 一 ...

  8. Java比较器对数组,集合排序一

    数组排序非常简单,有前辈们的各种排序算法,再加上Java中强大的数组辅助类Arrays与集合辅助类Collections,使得排序变得非常简单,如果说结合比较器Comparator接口和Collato ...

  9. Java集合框架实现自定义排序

    Java集合框架针对不同的数据结构提供了多种排序的方法,虽然很多时候我们可以自己实现排序,比如数组等,但是灵活的使用JDK提供的排序方法,可以提高开发效率,而且通常JDK的实现要比自己造的轮子性能更优 ...

随机推荐

  1. appium+android各配置参数获取'platformName'、'platformVersion'、appActivity、deviceName、webdriver.Remote

    图中1的获取--'platformName'.'platformVersion' 点击appium右上角的运行按钮,可通过上面查看platformName 和 platformVersion 平台版本 ...

  2. 大数据-hadoop HA集群搭建

    一.安装hadoop.HA及配置journalnode 实现namenode HA 实现resourcemanager HA namenode节点之间通过journalnode同步元数据 首先下载需要 ...

  3. POJ 2253-Frogger(最小生成树的最大权)

    原题链接:点击此处 题意: 一只叫Freddy的青蛙蹲坐在湖中的一块石头上.突然他发现一只叫Fiona的青蛙在湖中的另一块石头上.Freddy想要跟Fiona约会,但由于湖水太脏,他不想游泳过去而是跳 ...

  4. 进阶篇:3.9)3d打印件设计

    本章目的:了解3d打印,购买3d打印机. 1.3d打印基础知识: 现在主流的3d打印技术有4种:①FDM:②SLA:③SLS:④3DP.具体如下: ①熔融沉积造型(Fused deposition m ...

  5. golang (2) package

    综述 golang package是基本的管理单元,package是golang最基本的分发单位和工程管理中依赖关系的体现. 每个golang源代码文件开头都拥有一个package声明,表示该gola ...

  6. Servlet入门小案例

    案例一:tomcat9.jdk1.8 1.eclipse创建web项目 1)创建一个Dynamic web project,名字为Servlet_hjh 2)在src下创建一个包,为com.hjh.d ...

  7. JDK,JRE,JVM的基础理解

    1.JVM -- java virtual machine JVM就是我们常说的java虚拟机,它是整个java实现跨平台的 最核心的部分,所有的java程序会首先被编译为.class的类文件,这种类 ...

  8. google +ubuntu16.04

    1.在终端中输入以下命令 sudo wget https://repo.fdzh.org/chrome/google-chrome.list -P /etc/apt/sources.list.d/ 2 ...

  9. ambari-server启动出现ERROR main] DBAccessorImpl:106 - Error while creating database accessor java.lang.ClassNotFoundException:com.mysql.jdbc.Driver问题解决办法(图文详解)

    不多说,直接上干货! 问题详情 ambari-server启动时,报如下的错误 问题分析 注:启动ambari访问前,请确保mysql驱动已经放置在/usr/share/Java内且名字是mysql- ...

  10. 【Lua】LWT后台用JSON与 ExtJS传递数据

    要完成目录树的构建,需要前台ExtJS构筑页面,后台处理逻辑,中间由JSON传递数据. 首先搭建后台环境: require "httpd" require "lfs&qu ...