HashMap遍历方式

简介: HashMap遍历方式
// 通过Map.values()遍历所有的value,但不能遍历key
for(String v:map.values()){
 System.out.println("The value is "+v);
}
// 迭代器 EntrySet 方式遍历 -- 性能稍好 一次取值
Iterator<Map.Entry<Integer, String>> iterator = map.entrySet().iterator();
while (iterator.hasNext()){
    Map.Entry<Integer, String> next = iterator.next();
    System.out.println(next.getKey());
    System.out.println(next.getValue());
}
// 迭代器的 KeySet 方式遍历  
Iterator<Integer> iterator = map.keySet().iterator();
while (iterator.hasNext()){
    Integer key = iterator.next();
    System.out.print(key);
    System.out.print(map.get(key));
}
//  For Each EntrySet 方式遍历 -- 推荐,尤其是容量大时 
for (Map.Entry<Integer,String> entry: map.entrySet()) {
    System.out.println("entry.getKey() = " + entry.getKey());
    System.out.println("entry.getValue() = " + entry.getValue());
}
// For Each KeySet 方式遍历  -- 普通使用,二次取值(性能差)
for (Integer key: map.keySet()) {
    System.out.println(key);
    System.out.println(map.get(key));
}
// Lambda 表达式方式遍历
map.forEach((key,value) -> {
    System.out.print(key);
    System.out.print(value);
});
// Streams API 单线程方式遍历
map.entrySet().stream().forEach((integerStringEntry -> {
    System.out.println(integerStringEntry.getKey());
    System.out.println(integerStringEntry.getValue());
}));
// Streams API 多线程方式遍历
map.entrySet().parallelStream().forEach((integerStringEntry -> {
    System.out.println(integerStringEntry.getKey());
    System.out.println(integerStringEntry.getValue());
}));


相关文章
|
2天前
|
存储 编译器 Serverless
用C++实现一个哈希桶并封装实现 unordered_map 和 unordered_set
用C++实现一个哈希桶并封装实现 unordered_map 和 unordered_set
|
10月前
|
存储
|
10月前
|
Java API
最新Map遍历的5种方式
最新Map遍历的5种方式
86 0
|
存储 自然语言处理 安全
Map&Set哈希桶(基础+常用方法总结)
Map&Set哈希桶(基础+常用方法总结)
Map&Set哈希桶(基础+常用方法总结)
|
存储 NoSQL Redis
|
存储 Java
从数组当做map的key引发的思考
从数组当做map的key引发的思考
119 0
|
存储 算法 数据安全/隐私保护
Hash 的定义
Hash,一般翻译做散列、杂凑,或音译为哈希。
99 0
|
Python
【怎么给一个字典进行按值或key来排序?】
字典是具有指定数字或键的特定数据集或组。在 Python 以外的编程语言中,它们也被称为哈希映射或关联数组。
|
存储 机器学习/深度学习 缓存