从 HashMap 中获取前 k 个值

ark*_*ght 0 java string hashmap

我正在尝试从哈希图中获取前 k 个值。

我知道如何从哈希图中获取所有值以及如何迭代所有值。有没有什么简单的方法可以从 hashmap 生成前 k 个值

for (Map.Entry<String, Integer> en : hmap.entrySet()) 
{ 
        System.out.println("Key = " + en.getKey() + ", Value = " + en.getValue());
}
Run Code Online (Sandbox Code Playgroud)

Rus*_*lan 5

接口的第一个元素的概念未定义Map。您可以在评论中如何提及它,LinkedHashMap或者第一个项目的意义TreeMap所在。

如果您只想获取一些有限数量的地图值,您可以使用流 api limit

hmap.entrySet().stream()
    .limit(2)
    .collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)