HashMap遍历的三种方式

该博客介绍了Java中HashMap遍历的三种常见方法:keySet遍历,entrySet遍历和iterator迭代器遍历,并通过示例代码展示了每种方法的使用。entrySet遍历和iterator遍历通常比keySet遍历更有效率,因为它们直接获取键值对,避免了额外的get()操作。
摘要由CSDN通过智能技术生成

HashMap遍历的三种方式

hashmap常用的三种方式分为

keySet遍历

就是把这个hashmap所有的key都拿出来放到一个set里,然后在通过这个key去通过hashmap的get方法去查询对应的value,这种方法,最LOW

entrySet遍历

就是把这个hashmap里的的一对对儿entrty(就比如 “zhangyin”,“nan” 就算是一个entrty)拿出来,然后再根据entrty的getKey和getValue去获取每一个entrty的key和value,这种办法,居中

iterator迭代器遍历

package com.daylywork.study;

import lombok.extern.slf4j.Slf4j;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
@Slf4j
public class MyHashMapOne {
    public static void main(String[] args){
        HashMap<String,String> hashMap=new HashMap<String,String>();
        hashMap.put("zhangyin","nan");
        hashMap.put("wangwei","nv");
        hashMap.put("haiyan","and");
        log.info("keySet遍历");
        for (String key:hashMap.keySet()){
            System.out.println("key="+key+",value="+hashMap.get(key));
        }
        log.info("entrySet遍历");
        for (Map.Entry<String,String> entry: hashMap.entrySet()){
            System.out.println("key="+entry.getKey()+",value="+entry.getValue());
        }
        log.info("iterator迭代器遍历");
        //Iterator对集合类中的任何一个实现类,都可以返回这样一个Iterator对象。可以适用于任何一个类
        Iterator iterator=hashMap.entrySet().iterator();
        //只要迭代器里还有数据,就继续循环
        while (iterator.hasNext()){
            Map.Entry entry = (Map.Entry)iterator.next();
            System.out.println("key="+entry.getKey()+",value="+entry.getValue());
        }
    }
}


结果:

15:51:49.671 [main] INFO com.daylywork.study.MyHashMapOne - keySet遍历
key=wangwei,value=nv
key=haiyan,value=and
key=zhangyin,value=nan
15:51:49.674 [main] INFO com.daylywork.study.MyHashMapOne - entrySet遍历
key=wangwei,value=nv
key=haiyan,value=and
key=zhangyin,value=nan
15:51:49.674 [main] INFO com.daylywork.study.MyHashMapOne - iterator迭代器遍历
key=wangwei,value=nv
key=haiyan,value=and
key=zhangyin,value=nan
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值