HashMap的遍历方式 -- 好几次差点记不起来总结了一下

java 复制代码
public class HashMapDemo {
    public static void main(String[] args) {
        // 创建一个HashMap并添加一些键值对
        Map<String, Integer> hashMap = new HashMap<>();
        hashMap.put("Alice", 25);
        hashMap.put("Bob", 30);
        hashMap.put("Charlie", 28);
        hashMap.put("David", 22);

        // 方法1: 使用entrySet遍历
        System.out.println("方法1: 使用entrySet遍历");
        for (Map.Entry<String, Integer> entry : hashMap.entrySet()) {
            String key = entry.getKey();
            int value = entry.getValue();
            System.out.println("Key: " + key + ", Value: " + value);
        }

        // 方法2: 使用keySet遍历
        System.out.println("方法2: 使用keySet遍历");
        Set<String> keySet = hashMap.keySet();
        for (String key : keySet) {
            int value = hashMap.get(key);
            System.out.println("Key: " + key + ", Value: " + value);
        }

        // 方法3: 使用values遍历
        System.out.println("方法3: 使用values遍历");
        for (int value : hashMap.values()) {
            System.out.println("Value: " + value);
        }

        // 方法4: 使用迭代器遍历
        System.out.println("方法4: 使用迭代器遍历");
        Iterator<Map.Entry<String, Integer>> iterator = hashMap.entrySet().iterator();
        while (iterator.hasNext()) {
            Map.Entry<String, Integer> entry = iterator.next();
            String key = entry.getKey();
            int value = entry.getValue();
            System.out.println("Key: " + key + ", Value: " + value);
        }
    }
}
相关推荐
niucloud-admin3 分钟前
java服务端——controller控制器
java·开发语言
To Be Clean Coder4 分钟前
【Spring源码】通过 Bean 工厂获取 Bean 的过程
java·后端·spring
永远都不秃头的程序员(互关)10 分钟前
C++动态数组实战:从手写到vector优化
c++·算法
Fortunate Chen10 分钟前
类与对象(下)
java·javascript·jvm
程序员水自流11 分钟前
【AI大模型第9集】Function Calling,让AI大模型连接外部世界
java·人工智能·llm
‿hhh14 分钟前
综合交通运行协调与应急指挥平台项目说明
java·ajax·npm·json·需求分析·个人开发·规格说明书
小徐Chao努力14 分钟前
【Langchain4j-Java AI开发】06-工具与函数调用
java·人工智能·python
无心水17 分钟前
【神经风格迁移:全链路压测】33、全链路监控与性能优化最佳实践:Java+Python+AI系统稳定性保障的终极武器
java·python·性能优化
萧曵 丶25 分钟前
Synchronized 详解及 JDK 版本优化
java·多线程·synchronized
夏幻灵40 分钟前
JAVA基础:基本数据类型和引用数据类型
java·开发语言