java - 按键聚合 hashmap 中的值

标签 java collections

考虑一个简单的HashMap<Integer,Integer> 。如何获取针对多个(例如 5)键存储的所有值?我曾从事JavaCollections有一段时间了,但突然我就毫 headless 绪了。

任何帮助将不胜感激。

问候,

萨利尔

最佳答案

List<Integer> values = new ArrayList<>();
for (Map.Entry<Integer, Integer> entry : map.entrySet()) {
  if (entry.getKey() % 5 == 0) {
     values.add(entry.getValue());
  }
}

FWIW,类似的 Java 8 方法可能看起来像

map.entrySet().stream()
   .filter(entry -> entry.getKey() % 5 == 0)
   .map(Entry<Integer, Integer>::getValue)
   .collect(toList());

关于java - 按键聚合 hashmap 中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21544103/

相关文章:

java - 如何传递给方法 TreeSet 或 HashMap 并显示它?

Java - 集合选择

java - 如果 ArrayList 的已排序 Collection 扩展到超过其初始大小,它会变为未排序吗?

java - Android/Java 渲染问题 - 无法解析资源/无法转换为可绘制对象

java - 了解 JDBC 内部结构

Java 附加 API

c# - 如何通过属性使字典只读?

java - 为什么类型变量在java中是不可具体化的类型

java - 无法解决 pom.xml 中的错误

java - 如何使用java中的两个条件删除mongodb中的文档