java - 获取 HashMap 中的前 10 个值

标签 java sorting hashmap

我想弄清楚如何从 HashMap 中获取前 10 个值。我最初尝试使用 TreeMap 并让它按值排序,然后取前 10 个值,但似乎这不是选项,因为 TreeMap 按键排序.

我仍然希望能够知道哪些键具有最高值, map 的K、VString、Integer

最佳答案

也许您应该为存储在 HashMap 中的值对象实现Comparable 接口(interface)。 然后你可以创建一个包含所有值的数组列表:

List<YourValueType> l = new ArrayList<YourValueType>(hashmap.values());
Collection.sort(l);
l = l.subList(0,10);

问候

关于java - 获取 HashMap 中的前 10 个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15436516/

相关文章:

java - 监听多个目录以在 Java 中创建文件

java - 什么是嵌入到 Java 游戏引擎中的良好、简单的脚本语言?

java - XML在Java中编辑所有同名标签

java - Hadoop WordCount 按单词出现次数排序

java - 不使用 Map 或 Set 成对排序列表

java - Android - 我们在 HashMap<MyEnum, String> 中使用 enum 作为键代替 String 是否合适?

java - Java 中的缓冲和非缓冲流

sorting - Pandas 数据透视表嵌套排序

java - 如何按航空公司打印飞机

java - 如何有效地按组对列表进行排序?