Kotlin中Map字段排序的几种方法

2018-12-24  本文已影响0人  InvictusGar

背景
不同版本Android计算的HashCode会存在差异,需要对一个Map进行字典排序,Map中的key为String。

map.put("abc", value)
map.put("bb", value)
map.put("姓名", value)
map.put("年龄", value)

https://discuss.kotlinlang.org/t/inline-comparator-for-tosortedmap/5404
https://stackoverflow.com/questions/45375988/how-to-sort-linkedhashmap-by-values-in-kotlin

实践证明,toSortedMap无效,sortedBy也无效,复写Comparator的方法对List有效,不适用Map

最后使用的

mapToSort = mapToSort.entries.sortedBy { it.value.size }.associateBy({ it.key }, { it.value })

附上Java中:https://www.jianshu.com/p/e9648ddaf68c

上一篇 下一篇

猜你喜欢

热点阅读