Map集合的浅析
一.特点
1.数据的存储形式是以键值对(key-value)存储
2.其中key值无顺序,不可以重复;value无顺序,但可以重复
二.Map集合中的方法
1.get(Object key):通过key查找对应的value
2.put(Object key,Object value):将key-value添加到集合中,如果key已经存在,则用新的value覆盖旧 的value
3.remove(Object key):删除key所对应的键值对
4.size():该集合的长度
5.containsKey(Object key):判断key是否存在
6.containsValue(Object value):判断value是否存在
三.Map的遍历方式
1. KeySet
:Set 遍历Map中所有的key
public static <K,V> void print1(Map
<K,V> map
){
Set
<K> keys
= map
.keySet();
for(K key
:keys
){
V value
= map
.get(key
);
System
.out
.println(key
+" "+value
);
}
}
2. values
:Collection 遍历Map中所有的value
public static <K,V> void print2(Map
<K,V> map
){
Collection
<V> values
= map
.values();
for(V value
:values
){
System
.out
.println(value
);
}
}
3. entrySet(): Set中的元素为Map
.Entry对象,代表一个键值对,遍历Map集合中所有的键值对
public static <K,V> void print3(Map
<K,V> map
){
Set
< Map
.Entry
<K,V> > es
= map
.entrySet();
for( Map
.Entry
<K,V> entry
:es
){
K key
= entry
.getKey();
V value
= entry
.getValue();
System
.out
.println(key
+" "+value
);
}
}
4.forEach():实现 BigConsumer接口直接遍历Map
public static <K,V> void print4(Map
<K,V> map
){
map
.forEach(new BigConsumer<K,V>)(){
public void accept(K key
,V value
){
System
.out
.println(key
+" "+value
);
}
};
}