Map集合遍历的第二种方式:使用Entry对象遍历

Map集合中的方法:

Set<Map.Entry<K,v>> entrySet()返回此映射中包含的映射关系的Set 视图。

使用Map集合中的方法entrySet(),把Nap集合中多个Entry对象取出来,存储到一个set集合中

.遍历set集合,获取每一个Entry对象/使用迭代器遍历set集合

 

使用Entry对象中的方法getKey()和getvalue()获取键与值

 

 

 增强for

 

 

 

 

HashMap存储自定义类型键值

HashMap存储自定义类型键值

Map集合保证key是唯一的:作为key的元素,必须重写hashcode方法和equals方法,以保证key唯一

 

 

使用keyset

HashMap<String, Person> map = new HashMap<>();
        map.put("北京",new Person("张三",18));
        map.put("上海",new Person("李四",19));
        map.put("广州",new Person("王五",20));
        map.put("北京",new Person("赵六",18));

        Set<String> set = map.keySet();
        for (String key:set){
            Person person = map.get(key);
            System.out.println(key+person);
        }

使用entrySet和增强for遍历Map集合

注意实体类重写hashcode方法

HashMap<Person, String> map = new HashMap<>();
        map.put(new Person("女王",18),"英国");
        map.put(new Person("秦始皇",18),"秦国");
        map.put(new Person("普京",18),"俄罗斯");
        map.put(new Person("女王",18),"巴基斯坦");
        Set<Map.Entry<Person, String>> set = map.entrySet();
        for (Map.Entry<Person,String> entry : set){
            Person key = entry.getKey();
            String value = entry.getValue();
            System.out.println(key+value);
        }

 

 

posted on 2022-07-06 16:26  淤泥不染  阅读(53)  评论(0)    收藏  举报