HashMap遍历的方法2:entrySet

Map集合中的方法:

  • Set> entrySet() 返回此映射中包含的映射关系的 Set 视图。

实现步骤:

  1. 使用Map集合中的方法entrySet(),把Map集合中多个Entry对象取出来,存储到一个Set集合中
  2. 遍历Set集合,获取每一个Entry对象
  3. 使用Entry对象中的方法getKey()和getValue()获取键与值

HashMap遍历的方法2:entrySet_第1张图片

package at.home.demo05Map;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;

public class Demo05MapEntryKey {
    public static void main(String[] args) {
        showEntrySet();
    }
    
    private static void showEntrySet() {
        Map<String, Integer> redVelvet = new HashMap<>();
        redVelvet.put("Irene", 29);
        redVelvet.put("Seulgi", 26);
        redVelvet.put("Wendy", 26);
        redVelvet.put("Joy", 24);
        redVelvet.put("yeri", 21);

        //1.使用Map集合中的方法entrySet(),把Map集合中多个Entry对象取出来,存储到一个Set集合中
        Set<Map.Entry<String, Integer>> entrySet = redVelvet.entrySet();

        //2.遍历Set集合,获取每一个Entry对象
        Iterator<Map.Entry<String, Integer>> it = entrySet.iterator();
        while (it.hasNext()) {
            Map.Entry<String, Integer> entry = it.next();
            //3.使用Entry对象中的方法getKey()和getValue()获取键与值
            String name = entry.getKey();
            Integer age = entry.getValue();
            System.out.println(name + ": " + age);
        }
        System.out.println("--------------");

        //用增强for循环
        for (Map.Entry<String, Integer> entry : entrySet) {
            String name = entry.getKey();
            Integer age = entry.getValue();
            System.out.println(name + ": " + age);
        }
        System.out.println("--------------");

        //另一种增强for循环,直接的方式
        for (Map.Entry<String, Integer> entry : redVelvet.entrySet()) {
            String name = entry.getKey();
            Integer age = entry.getValue();
            System.out.println(name + ": " + age);
        }

    }
}

你可能感兴趣的:(Java初级进阶)