lambda对集合key为string类型排序_lambda分组key类型_嘿;-)翔�的博客-程序员秘密

技术标签: 解决方法  

此处是对set集合,泛性为string类型进行升序排列,如果想要降序排列将return的参数调换位置即可

//集合根据某个字段分组
  Map<String, List<MetaDataPo>> collect = columnNameList.stream().collect(Collectors.groupingBy(MetaDataPo::getDbName));
//  获取key
        Set<String> dbNames = collect.keySet();
        //降序数据库名称
        List<String> dbNameSort = new ArrayList<>(dbNames);
        Collections.sort(dbNameSort, new Comparator<String>() {
            @Override
            public int compare(String o1, String o2) {
                return o1.compareTo(o2);
            }
        });

泛性为对象

Set<DiaryPicture> diaryPictureSet = growthDiary.getDiaryPictures();    
List<DiaryPicture> diaryPictureList = new ArrayList<DiaryPicture>(diaryPictureSet);   
                  
/*将list有序排列*/    
 Collections.sort(diaryPictureList, new Comparator<DiaryPicture>() {    
  public int compare(DiaryPicture arg0, DiaryPicture arg1) {    
     eturn arg0.getId().compareTo(arg1.getId()); // 按照id排列    
  }    
});

其他的lambda表达式的使用可以参考
https://www.cnblogs.com/hmy-1365/p/12923435.html
如果想要在集合分组时就进行对key进行排序可以参考
https://blog.csdn.net/qq_39172525/article/details/87366107

加油每一天!

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/cdliker/article/details/114324785

智能推荐

HashMap在JDK1.7和JDK1.8的区别(源码解读)_jdk1.8和1.7hashmap的区别_晓二当家的博客-程序员秘密

HashMap在JDK1.7和JDK1.8的区别1.区别存储结构不同:JDK1.7是数组+链表,JDK1.8则是数组+链表+红黑树结构;初始化方式不同:JDK1.7中当哈希表为空时,会先调用inflateTable()初始化一个数组;而JDK1.8则是直接调用resize()扩容;插入数据方式不同:插入键值对的put方法的区别,JDK1.8中会将节点插入到链表尾部,而JDK1.7中是采用头插,因为JDK1.7是用单链表进行的纵向延伸,当采用头插法时会容易出现逆序且环形链表死循环问题。但是在JDK1

用Python实现自动扫雷,不会的都给整会了_python扫雷_彳余大胆的博客-程序员秘密

相关文件想学Python的小伙伴可以关注小编的公众号【Python日志】有很多的资源可以白嫖的哈,不定时会更新一下Python的小知识的哈!!前言今天给大家分享的这个案例是用 Python+OpenCV 实现了自动扫雷,并突破了人类的世界记录。(当然这不算哈)咱们废话不多说,先看成果~相信许多人很早就知道有扫雷这么一款经典的游(显卡测试)戏(软件),更是有不少人曾听说过中国雷圣,也是中国扫雷第一、世界综合排名第二的郭蔚嘉的顶顶大名。扫雷作为一款在Windows9x时代就已经诞生的经典游戏,从过

java.lang.ArrayIndexOutOfBoundsException: 17_weixin_33834679的博客-程序员秘密

2019独角兽企业重金招聘Python工程师标准&gt;&gt;&gt; ...

A Cappella-Accentuate The Positive-Suade组合(音乐河84)_weixin_30625691的博客-程序员秘密

Accentuate The PositiveGather around me, every body, Gather around me while I preach some,Got a sermon coming on me. The topic will be sin cause that's what I'm againstIf you wanna hear my...

MTK android系统源码修改快速上手_知我罪我其惟春秋乎的博客-程序员秘密

1.拷贝代码仓库 从[email protected]:a89.git 到work目录下:[email protected]:~/work$ [email protected]:~/work$ rm -rf a89/[email protected]:~/work$ cd [email protected]:~/work$ git [email protected]:a89.git2.修改xshell用户密码:passwd  

随便推点

Postgresql内核源码分析-vacuum流程2_韩楚风的博客-程序员秘密

本文是基于postgresql 15的代码进行分析解读,演示是在centos8系统上进行。vacuum有两种调用途径,通过SQL命令和可执行命令,通过autovacuum后台服务。命令方式可以通过设置参数,对vacuum行为可选项进行控制;autovacuum是后面服务,根据配置定期进行调用执行,按数据库列表进行遍历,然后分别遍历各个数据库内的所有表及表涉及的对象。

flv支持html5,flv.js - HTML5 FLV Player_注会大狮的博客-程序员秘密

flv.js - HTML5 FLV Player1480This project relies on Media Source Extensions to work. flv.js works by transmuxing FLV file stream into ISO BMFF (Fragmented MP4) segments, followed by feeding mp4 segmen...

python入门练习题2_奋豆儿小米粒的博客-程序员秘密

1.利用递归方法求5!def tang(j):sum_value=0if j==0: sum_value=1else: sum_value=j*tang(j-1)return sum_valuefor i in range(10): print("%d!=%d" %(i,tang(i)))利用递归函数调用方式,将所输入的5个字符,以相反顺序打印...

C语言中字符常量于字符串常量有什么区别_iteye_10770的博客-程序员秘密

单引号里一个字符为字符常量,如:‘A’字符常量可以保存在一个字符变量里,如:char ch='a';双引号里一串字符为字符串常量,如:“A”,“ABC”字符串常量只能保存在一个字符数组或字符指针中,如:char name[]=&quot;zhang san&quot;;或char *name=&quot;zhang san&quot;;...

Keras-train_渊博小郎君的博客-程序员秘密

# USAGE# python minivggnet_cfar10.py -o output/minivggnet_cfar10.png# ~/Project/deep-learning-for-computer-vsion/datasets# import the necessary packagesimport matplotlibmatplotlib.use("Agg")from config import dogs_vs_cats_config as configfrom skl.

推荐文章

热门文章

相关标签