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

/**

  • Created by song on 2019/1/17.
    */
    public class MapT {
    public static void main(String[] args) {
    Map<Integer,String> map=new HashMap<>();
    map.put(1,"第一个");
    map.put(2,"第二个");
    map.put(3,"第三个");
    map.put(4,"第四个");

    //第一种:先得到key的值 然后通过key值得到value值
    Set<Integer> set=map.keySet();//这里的泛型是key值得泛型
    for(Integer integer:set){
        System.out.println(integer+"->"+map.get(integer));//key->value
    }
    
    //第二种:通过Map.values()遍历所有的value但是不能遍历key
    for(String s:map.values()){
        System.out.println(s);
    }
    
    //第三种:通过Map.entrySet使用迭代器iterator遍历key和value
    Iterator<Map.Entry<Integer,String>> iterable=map.entrySet().iterator();
    while(iterable.hasNext()){
        Map.Entry<Integer,String>entry=iterable.next();
        System.out.println(entry.getKey()+"->"+entry.getValue());
    }
    
    //第四种:直接通过Map.entrySet遍历key和value
    //最常见
    for(Map.Entry<Integer,String> entry:map.entrySet()){
        System.out.println(entry.getKey()+"->"+entry.getValue());
    }
    
    //注:Map.Entry方法解释
    //Map.Entry是Map声明的一个内部接口,此接口为泛型,定义为Entry<K,V>。它表示Map中的一个实体(一个key-value对)

    }
    如果你对技术提升很感兴趣,可以加入Java高级技术来交流学习:856443934,里面都是同行,有资源分享和技术进阶思维导图,其中:(分布式架构、高可扩展、高性能、高并 发、Jvm性能调优、Spring,MyBatis,Nginx源码分析,Redis,ActiveMQ、、Mycat、Netty、Kafka、Mysql 、Zookeeper、Tomcat、Docker、Dubbo、Nginx)。欢迎一到五年的工程师加入,合理利用自己每一分每一秒的时间来学习提升自己,不要再用"没有时间“来掩饰自己思想上的懒惰!趁年轻,使劲拼,给未来的自己一个交代!文末分享架构资料,私信【架构】免费获取!