我正在尝试从哈希图中获取前k个值。
我知道如何从哈希图中获取所有值,以及如何遍历所有值。有没有什么短方法可以从hashmap生成前k个值
for (Map.Entry<String, Integer> en : hmap.entrySet())
{
System.out.println("Key = " + en.getKey() + ", Value = " + en.getValue());
}
答案 0 :(得分:4)
Map
接口的前几个元素的概念未定义。在注释中如何提及它,您可以在 first 项有意义的地方使用LinkedHashMap
或TreeMap
。
如果仅想获取一些限制的映射值,则可以将流api与limit
结合使用:
hmap.entrySet().stream()
.limit(2)
.collect(Collectors.toList());