查找 map 是否包含列表/可迭代中的任何键的有效方法
2022-09-02 11:07:13
我需要检查映射是否包含列表中的任何键,如果包含,则返回第一个匹配值。想到的天真的方法是在两个嵌套的循环中执行此操作:
Map<String, String> fields = new HashMap<String, String>();
fields.put("a", "value a");
fields.put("z", "value z");
String[] candidates = "a|b|c|d".split("|");
for (String key : fields.keySet()){
for (String candidate : candidates) {
if (key.equals(candidate)){
return fields.get(key);
}
}
}
有没有一种更好,更有效的方法,可能是依赖Java标准库的方法?