需求:
在做统计分析的时候,有时候需要最value做排序,比如词频的统计,也就是计算tf最后输出排序的结果
实现:
map-><Map.Entry<String, Integer>->Collections.sort
Map<String, Integer> map = new HashMap<String, Integer>(); for (int i = 0; i < 10; i++) { map.put(RandomStringUtils.random(3, "abc"), RandomUtils.nextInt(10)); } List<Map.Entry<String, Integer>> entrySet = new ArrayList<Map.Entry<String, Integer>>( map.entrySet()); System.out.println(entrySet); Collections.sort(entrySet, new Comparator<Map.Entry<String, Integer>>() { public int compare(Entry<String, Integer> o1, Entry<String, Integer> o2) { return o2.getValue().compareTo(o1.getValue()); } }); System.out.println(entrySet);
output:
[aab=1, cac=8, cab=6, abc=2, aaa=9, cba=2, caa=8, bcc=2, bba=8, bbc=4] [aaa=9, cac=8, caa=8, bba=8, cab=6, bbc=4, abc=2, cba=2, bcc=2, aab=1]
相关推荐
Map是键值对的集合接口,它的实现类主要包括:HashMap,TreeMap,Hashtable以及LinkedHashMap等。这篇文章主要介绍了Java Map 按照Value排序的实现方法,需要的朋友可以参考下
对Map的key和value进行排序
麻雀虽小,五脏俱全 展示了一个JDK的BUG,有兴趣的朋友,可以看下噢 我也不知道算不算BUG,解决起来很简单,但这样似乎违背了JDK的本意
NULL 博文链接:https://sakajiaofu.iteye.com/blog/1998474
NULL 博文链接:https://gghaomm.iteye.com/blog/1754487
map内部是按照hash算法存储的,但如果能对map排序在某些时候还是有用的,下面实现对map按照value升序排序,实现对map按照key排序,大家参考使用吧
可以将Map中的对象按照键或值进行升序或降序排列,经测试一切正常,开发者看懂后按照需求对应修改即可!
下面小编就为大家带来一篇Android 对Map按key和value分别排序的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
下面小编就为大家带来一篇Java Map 按key排序和按Value排序的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
主要介绍了java8 stream 操作map根据key或者value排序的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
支持一个List<Map>按照MAP中的一个或者多个Key的value值的中英文来排序,自动识别字符和数字(包括[a-zA-z]?[0-9]*)排序
下面小编就为大家带来一篇java的Map集合中按value值进行排序输出的实例代码。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
下面小编就为大家带来一篇浅谈Java之Map 按值排序 (Map sort by value)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
MapReduce二次排序代码实现。 二次排序这里指:在以key为关键字的排序基础上,同时按照value排序
// 常用的map接口的实现类有HashMap,LinkedHashMap和TreeMap // HashMap不保证集合中元素的顺序, // LinkedHashMap按插入顺序排序 // TreeMap按自己的意愿进行排序,默认按key值升序排序。 另包含一篇网文:在java...
此代码为工具类代码,可直接下载使用,调用此方法将需要排序的参数传入即可
Map是Java中最天才的设计,使用起来也很灵活,该类总结了Map通过key和value进行升序和降序排序,Map的两种遍历的公共方法以及上面功能的测试方法
博文《Java中如何遍历map》源码。可以直接粘贴博文中源码 也可以下载它,免费了。
2. 两个实现类HashSet(LinkHashSet)和TreeSet,TreeSet有排序功能(Set set=new TreeSet();set.add(new Integer(8)); set.add(new Integer(4)); set.add(new Integer(7));)输出后的结果是:4 7 8 Eg: package test...