kotlin中map对value进行排序
kotlin中对HashMap的排序和java中有些不同
java
重写Comparator
Map<String, String> map = new HashMap<String, String>();map.put("c", "ccccc");map.put("a", "aaaaa");map.put("b", "bbbbb");map.put("d", "ddddd");List<Map.Entry<String,String>> list = new ArrayList<Map.Entry<String,String>>(map.entrySet());Collections.sort(list,new Comparator<Map.Entry<String,String>>() {//升序排序public int compare(Entry<String, String> o1,Entry<String, String> o2) {return o1.getValue().compareTo(o2.getValue());}});
kotlin
val scopeMap = HashMap<String,Int>()scopeMap["c"] = 72scopeMap["a"] = 85scopeMap["b"] = 80scopeMap["d"] = 70
//正序
val mapSort = scopeMap.entries.sortedBy { it.value }.associateBy ({ it.key }, { it.value } )
//倒叙
val mapDescSort = scopeMap.entries.sortedByDescending { it.value }.associateBy ({ it.key }, { it.value } )
kotlin中map对value进行排序相关推荐
- c++ map是有序还是无序的_C++ STL中Map的按Key排序和按Value排序
map是用来存放键值对的数据结构,可以很方便快速的根据key查到相应的value.假如存储学生和其成绩(假定不存在重名,当然可以对重名加以区分),我们用map来进行存储就是个不错的选择. 我们这样定义 ...
- C++ STL中Map的按Key排序和按Value排序
map是用来存放<key, value>键值对的数据结构,可以很方便快速的根据key查到相应的value.假如存储学生和其成绩(假定不存在重名,当然可以对重名加以区分),我们用map来进行 ...
- Kotlin中常用集合的使用
集合在程序中的比例的很重的,Kotlin针对集合进行了更加简洁和有效的封装,这边文章就简单的介绍一下list,map,set这三个最常用集合的使用. 首先在Kotlin中,明确区分了集合的只读和可变. ...
- java对list中map集合中某个字段排序
java对list中map集合中某个字段排序 适用于字符串排序,数字对比不可用,以下示例,当把sort的值改为74,66,142时排序不对看示例2 示例1 List<Map<String, ...
- kotlin中的Map集合类
Kotlin中的Map分为: 只读Map. 可变的MutableMap(MutableMap.HashMap.LinkedHashMap). Map源码: private object EmptyMa ...
- java map 自动排序_Java中Map的排序
Map的种类 在Java中,Map的主要作用是存储键值对.由于是根据键得到值,所以不允许键重复.它主要有如下几个类别: HashMap: 最常用的Map,它根据键的HashCode值存储数据,根据键可 ...
- java的map键值类型是否固定_Java中Map根据键值(key)或者值(value)进行排序实现
我们都知道,java中的Map结构是key->value键值对存储的,而且根据Map的特性,同一个Map中 不存在两个Key相同的元素,而value不存在这个限制.换句话说,在同一个Map中Ke ...
- Kotlin中的List排序
一.排序的简单用法 在Java中,对List进行排序可以使用Collections.sort()方法,在Kotlin中有非常简单的语法糖,所以这里记录一下,开发中尽量用简单的方式,方便维护. 一段未排 ...
- golang 中 map 排序
golang 中没有专门的 map 排序函数,且 map 默认是无序的,也就是你写入的顺序和打印的顺序是不一样的. m := make(map[string]string, 0) m["on ...
最新文章
- 黑客渗透入门教程 第一课:粗暴的端口扫描
- 顺序表的基本操作实验报告_INDIRECT函数从入门到进阶之相同顺序跨表引用
- Docker Hello World容器运行报错的解决办法
- ES6-10 super、4种遍历方式、原型、symbol遍历
- 中间件和微服务,Docker以及原生云架构的关系
- 没有Wi-Fi?三种方法通过iPhone让Macbook连上网络
- Java多线程学习笔记-线程的使用
- C4D立体风格海报素材|电商万能套用BANNER是美工必收藏
- 双塔模型的瓶颈究竟在哪?
- 视频剪辑软件对比之:会声会影与剪映
- 解决Xshell6 Xftp 6 强制更新,无法更新使用问题
- 偶的流氓老公zt (超搞笑-转)
- Swiper的安装及使用
- Ubuntu中编译linux内核后使用make menuconfig报错的解决办法
- http://level3.tasteless.eu/ 获得服务器目录及其内部文件信息
- 系统试运行报告是谁写的_深圳个人信用报告查询系统入口https://ipcrs.pbccrc.org.cn/...
- 什么是数据科学?数据科学的基本内容
- JAVA开发装机必备软件
- Apache Kylin的安装和使用
- PCB手工布线,覆铜,logo,倒圆角,制版
热门文章
- linux远程维护用友nc,软件问题维护,可以联系。
- JAVA集合Set之HashSet详解
- C++:no type named ‘type‘ in ‘class std::result_of<void (*())(HWND__*)>‘
- 一个真实项目的性能分析策略
- 开学季值得买的蓝牙耳机有哪些?适合学生党买的平价蓝牙耳机
- 打印空心菱形c语言编程,用C语言打印空心菱形问题
- System32和SysWOW64
- 计算机毕业设计JAVA的影视资讯管理系统mybatis+源码+调试部署+系统+数据库+lw
- quartus频率计 时钟设置_Verilog频率计设计
- 高并发下数据库插入常见的问题