二维 List 自定义排序
使用lambda表达式

import java.util.*;

public class Main {
public static void main(String[] args) {
List<List<Integer>> list = new LinkedList<>();
list.add(new LinkedList<>(Arrays.asList(3,300)));
list.add(new LinkedList<>(Arrays.asList(2,200)));
list.add(new LinkedList<>(Arrays.asList(4,400)));
list.add(new LinkedList<>(Arrays.asList(5,500)));
list.add(new LinkedList<>(Arrays.asList(1,100)));
// 排序前
System.out.println("排序前:" + list);
// 排序 (按照一维数组中下标为0的值排序)
Collections.sort(list, ((o1, o2) -> o1.get(0) - o2.get(0)));
// 排序后
System.out.println("排序后:" + list);
}
}

应用例子
2363. 合并相似的物品

class Solution {
public List<List<Integer>> mergeSimilarItems(int[][] items1, int[][] items2) {
List<List<Integer>> res = new LinkedList<>(); HashMap<Integer, Integer> map = new HashMap<>();
for(int[] item : items1){
map.put(item[0], item[1]);
}
for(int[] item : items2){
map.put(item[0], map.getOrDefault(item[0], 0) + item[1]);
}
// 遍历Map集合
for(Map.Entry<Integer, Integer> entry : map.entrySet()){
res.add(new LinkedList<>(Arrays.asList(entry.getKey(), entry.getValue())));
}
// 排序
Collections.sort(res, (a, b) -> (a.get(0) - b.get(0)));
return res;
}
}

最新文章

  1. 在php中定义常量时,const与define的区别?
  2. javascript系统时间测试题
  3. [Android Pro] proguard
  4. [IIS]IIS扫盲(三)
  5. java在url传输前更改字符编码
  6. 图片(img标签)的onerror事件
  7. 转:TimeSpan的用法
  8. 【drp 9】Servlet生命周期
  9. [转]log4net 使用指南
  10. Curl 采集乱码 gzip 原因及解决方案 utf-8
  11. SQL Database学习笔记
  12. ubuntu/linux mint 创建proc文件的三种方法(四)
  13. PAT 团体程序设计天梯赛-练习集 L1-016. 查验身份证
  14. 深入tornado中的IOStream
  15. JSP 页面传值方法总结
  16. Laravel5.5核心架构理解
  17. Uni-app中Class绑定与Style绑定
  18. asp.net core 中间件粗解
  19. 博客Hexo + github pages + 阿里云绑定域名搭建个人博客
  20. 如何创建一个 mongo 数据库并为它添加一个认证用户?

热门文章

  1. django 生产环境部署手册
  2. 学习ASP.NET Core Blazor编程系列九——服务器端校验
  3. 优雅处理Golang中的异常
  4. 万字详解JVM,让你一文吃透
  5. python 队列(QUEUE)
  6. Day06:运算符详解
  7. 【网络】安装Nginx笔记
  8. Go语言核心36讲07
  9. Java—猜数字
  10. 【云原生 · DevOps】DevOps 解决方案