集合例题3.:现在有一个map集合如下:Map<Integer,String> map = new HashMap<Integer, String>();map.put(1, “张三丰“);map.


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

/*
4. 现在有一个map集合如下:
Map map = new HashMap();
map.put(1, "张三丰");
map.put(2, "周芷若");
map.put(3, "汪峰");
map.put(4, "灭绝师太");
要求:
	1.遍历集合,并将序号与对应人名打印。
	2.向该map集合中插入一个编码为5姓名为郭靖的信息
	3.移除该map中的编号为1的信息
	4.将map集合中编号为2的姓名信息修改为"周林"
 */
public class Test05 {
    public static void main(String[] args) {
        Map map = new HashMap<>();
        map.put(1, "张三丰");
        map.put(2, "周芷若");
        map.put(3, "汪峰");
        map.put(4, "灭绝师太");
        //Map集合的遍历不能直接获取迭代器,需要先将map集合转变为Set集合后,才行
        //第一种将map集合的key转成set集合,获取set集合的迭代器,遍历set集合,通过map的get方法传入获取的每一个key来获取value
        daYin(map);
        map.put(5,"郭靖");
        daYin(map);
        map.remove(1);
        daYin(map);
        map.put(2,"周林");
        daYin(map);

    }
    public static void daYin(Map map) {
        Set set = map.keySet();
        Iterator it =  set.iterator();
        while (it.hasNext()){
            Integer key = it.next();
            String value = map.get(key);
            System.out.println(key +"==" + value);
        }
    }
}

遍历的另外两个方法

        //第二种将map集合全部转换为set集合后再获取迭代器遍历
        Set> set1 = map.entrySet();
        Iterator> it2 = set1.iterator();
        while (it2.hasNext()){
            Map.Entry se =  it2.next();
            Integer key = se.getKey();
            String value = se.getValue();
            System.out.println(key + "***" + value);
        }
        //在第二种的基础上使用foreach遍历
        for (Map.Entry se : set1){
            Integer key = se.getKey();
            String value = se.getValue();
            System.out.println(key + "--" + value);
        }

你可能感兴趣的:(java,idea,集合)