Jos*_*mon 4 java hashmap duplicates
我创建了一个包含String值的hashMap.我想每次添加一个新值来映射以检查hashmap中是否已存在.我已经定义了
final HashMap<String, String> map = new HashMap<String, String>();
map.put(key, myURL.toString());
我怎么能循环遍历hashmap来检查是否存在重复?
Gho*_*ica 13
简单:
return map.containsValue(myURL.toString());
Run Code Online (Sandbox Code Playgroud)
例如.或者,使用java8流:
return map.values().stream().anyMatch(v -> v.equals(myURL.toString()))
Run Code Online (Sandbox Code Playgroud)
但是当你要求有效的解决方案时,我建议你选择老式的非流式版本.因为第二个版本最有可能使用明显更多的CPU周期.
只有当你的地图有数以万计的条目,并且你只关注响应时间时,那么也许使用parallelStream()可以更快地给你答案.
Uni*_*ron 11
map.containsKey(key)
map.containsValue(val)
如果你坚持迭代,请执行:
Iterator<Entry<String, String>>iterator=map.entrySet();
while(iterator.hasNext()){
final Entry<String, String>next=iterator.next();
next.getKey(); next.getValue();
}
Run Code Online (Sandbox Code Playgroud)
指定人:http: //docs.oracle.com/javase/7/docs/api/java/util/Map.html
| 归档时间: |
|
| 查看次数: |
17552 次 |
| 最近记录: |