目录
注:hashmap的key值不能重复,否则只会保留最后一次put进去的那个对象,以此覆盖以前的键值对。
一、常用methods
-
boolean containsKey(Object key) 如果此映射包含指定键的映射,则返回
true
。 -
boolean containsValue(Object value) 如果此地图将一个或多个键映射到指定值,则返回
true
。 -
Set<Map.Entry<K,V>> entrySet( ) 返回此地图中包含的映射的
Set
视图。常用于遍历。 -
V get(Object key)返回到指定键所映射的值,若没有则返回
null
。 -
V getOrDefault(Object key , V defaultValue) 返回到指定键所映射的值,若没有则返回defaultValue。
-
Set KeySet() 返回此地图中包含的键的
Set
视图。 常用于遍历map中的Key。 -
V put(K key, V value) 将指定的值与此映射中的指定键相关联。即将键值对加入map中。
-
int size() 返回map中键值映射的数量。
-
V remove(Object key) 删除指定键的键值对。
-
boolean remove(Object key,Object value) 仅当存在指定的键值对时,将其删除。若不存在指定的键值对,则不操作。
-
V replace(K key,V value)替换指定键的值。
-
V replace(K key,V oldValue,V newValue)替换指定键值对的值。若不存在指定的键值对,则不操作。
二、遍历方式
1.使用迭代器
第一种 (效率高)
Map map = new HashMap();
Iterator iter = map.entrySet().iterator();
while (iter.hasNext()) {
Map.Entry entry = (Map.Entry) iter.next();
Object key = entry.getKey();
Object val = entry.getValue();
}
第二种(效率低)
Map map = new HashMap();
Iterator iter = map.keySet().iterator();
while (iter.hasNext()) {
Object key = iter.next();
Object val = map.get(key);
}
2.for each循环
第一种
Map<String, String> map = new HashMap<String, String>();
for (String key : map.keySet()) {
String val = map.get(key);
}
第二种
Map<String, String> map = new HashMap<String, String>();
for (Entry<String, String> entry : map.entrySet()) {
entry.getKey();
entry.getValue();
}