Map集合

 

 

 

Map.put(K,V)添加一个元素,如果原来包含了K,则返回被覆盖的V,如果原来不包含K,则返回null。

Map.remove(k),返回被删除的元素,如果没有找到,则返回null。

 

Map集合遍历

1.通过Map<string,integer> map=new HashMap<>();   Set  set=map.keySet()获取所有key,  再通过循环key,来get(k)来找到value。

     1.1迭代器:Iterator<string> iterator=set.iterator()

          while(iterator.hasNext())

          { map.get(iterator.next());}

     1.2增强for循环:for(string key:set)

            {map.get(key);}

2.通过Map<string,integer> map=new HashMap<>(); Set<Map.Entry<string,integer>> entrys=  map.entrySet();

    再遍历entrys集合。   entrys集合中的每个entry是一个string,integer的实体,可以通过enyry.getKey();entry.getValue()获得值

 

Map是key不能一样。Map能保证key不一样。如果key是自定义的类类型,那么需要在这个类中重写euals 和hashcode方法

 

 

LinkedHashMap 有序集合,存的顺序等于取的顺序

 

 

HashTable<K,V>不能存空值,单线程,线程安全的,速度慢

 

 

 

  

posted @ 2019-03-01 22:11  凌晨10点13分  阅读(120)  评论(0编辑  收藏  举报