遍历map常用方式

@SpringBootTest
public class TestMap {

    //定义一个map
    private static Map<String, Object> map = new HashMap<>();

    @BeforeAll
    public static void initData(){
        //初始化数据
        map.put("k1","v1");
        map.put("k2","v2");
        map.put("k3","v3");
        map.put("k4","v4");
    }

    @Test
    public void test1(){
        //1.使用Map.entrySet  性能较高
        Set<Map.Entry<String, Object>> entries = map.entrySet();
        for (Map.Entry<String, Object> entry : entries) {
            System.out.println(entry.getKey()+" : "+entry.getValue());
        }
    }

    @Test
    public void test2(){
        //2.使用Map.keySet  方便常用
        Set<String> set = map.keySet();
        set.forEach(key -> System.out.println(key+" : "+map.get(key)));
    }

    @Test
    public void test3(){
        //3.使用Map.values遍历所有value,不能遍历key
        Collection<Object> values = map.values();
        values.forEach(System.out::println);
    }

    @Test
    public void test4(){
        //4.使用迭代器iterator
        Iterator<Map.Entry<String, Object>> iterator = map.entrySet().iterator();
        while (iterator.hasNext()){
            Map.Entry<String, Object> next = iterator.next();
            System.out.println(next.getKey()+" : "+next.getValue());
        }
    }

    @Test
    public void test5(){
        //5.java8 lambda式
        map.forEach((k, v) -> System.out.println(k+" : "+v));
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 Java 中,遍 Map常用方式有以下几种: 1. 使用 for-each 循环遍 EntrySet:使用 for-each 循环遍 Map 的 entrySet() 方法,获取到 Map 中的每一个键值对,示例代码如下: ```java for (Map.Entry<String, Integer> entry : map.entrySet()) { String key = entry.getKey(); Integer value = entry.getValue(); System.out.println(key + " : " + value); } ``` 2. 使用 for-each 循环遍 KeySet:使用 for-each 循环遍 Map 的 keySet() 方法,获取到 Map 中的每一个键,示例代码如下: ```java for (String key : map.keySet()) { Integer value = map.get(key); System.out.println(key + " : " + value); } ``` 3. 使用迭代器遍 EntrySet:使用迭代器遍 Map 的 entrySet() 方法,获取到 Map 中的每一个键值对,示例代码如下: ```java Iterator<Map.Entry<String, Integer>> it = map.entrySet().iterator(); while (it.hasNext()) { Map.Entry<String, Integer> entry = it.next(); String key = entry.getKey(); Integer value = entry.getValue(); System.out.println(key + " : " + value); } ``` 4. 使用 Stream API 遍 EntrySet:使用 Stream API 遍 Map 的 entrySet() 方法,获取到 Map 中的每一个键值对,示例代码如下: ```java map.entrySet().stream().forEach(entry -> { String key = entry.getKey(); Integer value = entry.getValue(); System.out.println(key + " : " + value); }); ``` 以上就是 Java 中常用的几种遍 Map方式,具体使用哪种方式取决于你的需求和个人喜好。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值