有一种简单的方法来迭代一个Hashmap中的所有数组吗?
例如:
HashMap<String, ArrayList<String>>
我从一个HashValue中的数组中搜索一个元素。
答案 0 :(得分:3)
Map<String, List<String>> map = new HashMap<String, List<String>>();
for (List<String> values : map.values()) {
for (String value : values) {
// do what you want with the value here.
}
}
要缩短此循环,请查看LambdaJ。
Jakarta集合还有许多可以简化此代码的类。例如,包装多个集合并公开单个集合的API的类。像CollectionsCollection
这样的东西。但不幸的是,这个库还不支持泛型。
答案 1 :(得分:1)
您应该使用迭代器来运行哈希映射。
Iterator it = map.entrySet().iterator();
while (it.hasNext()) {
// code goes here
}