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

背景
不同版本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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 要不要让孩子上兴趣班?什么时候让孩子上兴趣班?选择哪种兴趣班? 交了钱,孩子不愿继续上怎么办?.............
    xyt月阅读 333评论 0 1
  • 我最近的睡眠一天比一天好起来了,因为之前是一天可以睡着一天睡不着,最近可以每天睡上4--5个小时了。昨天晚上和儿子...
    爱笑的妮子阅读 712评论 0 0
  • MathWorks by sennchi MathWorks is a privately held comp...
    sennchi阅读 364评论 0 0
  • 这半个月以来,自己除了抱怨工作,到处找人诉苦,试图从别人那里得到安慰,甚至妄想从她人那里得到人生的建议!就没真正的...
    司夕阅读 262评论 0 0