【 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. python高级——目录

    目  录 python高级(一)—— python数据模型(特殊方法) python高级(二)—— python内置序列类型 python高级(三)—— 字典和集合(泛映射类型) python高级(四 ...

  2. BZOJ - 2741 分块维护最大连续异或和

    题意:给定\(a[l...r]\),多次询问区间\([l,r]\)中的最大连续异或和\(a_i⊕a_{i+1}⊕...⊕a_{j},l≤i≤j≤r\) 一眼过去认为是不可做的,但题目给出\(n=1.2 ...

  3. system命令

    服务查看 查看所有服务运行状态: service --status-all chkconfig --list 查看单个服务的运行状态 service sshd status 查看启动状态,是否开机自动 ...

  4. 剑指offer——链表

    #include"stdio.h" #include"stdlib.h" #include"iostream" using namespac ...

  5. Vue学习笔记 template methods,filters,ChromeDriver,安装sass

    ChromeDriver installation failed Error with http(s) request: Error: connect ETIMEDOUT 172.217.160.80 ...

  6. Web前端测试要点

    Web前端测试维度: 功能性:功能准确性.兼容性 易用性:易学性.易理解性.易操作性.吸引性 可靠性:成熟性.容错性.稳定性.可恢复性.安全性 可移植性:适应性.易安装性.兼容性 可维护性:易分析性. ...

  7. 2.6 Rust Slice Type

    字符串操作 fn first_word(s: &String) -> usize { let bytes = s.as_bytes(); for (i, &item) in by ...

  8. Vue触发input选取文件点击事件

    CSS .upload-btn-box { margin-bottom: 10px; button { margin-right: 10px; } input[type=file] { display ...

  9. fish shell version

    如果你使用 fish shell, 想要自己定义变量,或者函数,或者alias, 不要使用      version     这个名字, 因为,version 这个名字 被 fish 本身占了.... ...

  10. cv2.FileNode has no keys

    把 python-opencv  版本由3.4.1 换成 3.4.4之后,问题解决