HashMap方法总结
clear()
从此map中删除所有映射。
HashMap<Integer,String> hashMap = new HashMap<>();
hashMap.put(1,"数学");
hashMap.put(2,"语文");
hashMap.put(3,"英语");
hashMap.clear();
hashMap.forEach((integer, s) -> System.out.println(integer + s)); //空的
clone()
返回此HashMap实例的浅表副本:键和值本身未被克隆。
HashMap<Integer,String> hashMap = new HashMap<>();
hashMap.put(1,"数学");
hashMap.put(2,"语文");
hashMap.put(3,"英语");
Object clone = hashMap.clone();
System.out.println(clone); //{1=数学, 2=语文, 3=英语}
compute(K key, BiFunction<? super K, ? superV, ? extends V> remappingFunction)
尝试计算指定键及其当前映射值的映射(如果没有当前映射,则为 null
)。
HashMap<Integer,String> hashMap = new HashMap<>();
hashMap.put(1,"数学");
hashMap.put(2,"语文");
hashMap.put(3,"英语");
String compute = hashMap.compute(1, (integer, s) -> integer + s);
System.out.println(compute); //1数学
containsKey(Object key)
如果此map包含指定键的映射,则返回 true
。
HashMap<Integer,String> hashMap = new HashMap<>();
hashMap.put(1,"数学");
hashMap.put(2,"语文");
hashMap.put(3,"英语");
System.out.println(hashMap.containsKey(1)); //true
containsValue(Object value)
如果此map将一个或多个键映射到指定值,则返回 true
。
HashMap<Integer,String> hashMap = new HashMap<>();
hashMap.put(1,"数学");
hashMap.put(2,"语文");
hashMap.put(3,"英语");
System.out.println(hashMap.containsValue("英语")); //true
entrySet()
返回此map中包含的映射的 Set 视图。
HashMap<Integer,String> hashMap = new HashMap<>();
hashMap.put(1,"数学");
hashMap.put(2,"语文");
hashMap.put(3,"英语");
Set<Map.Entry<Integer, String>> entries = hashMap.entrySet();
for (Map.Entry<Integer, String> entry : entries) {
System.out.print(entry.getKey() + "-" +entry.getValue()); //1-数学2-语文3-英语
}
get(Object key)
返回指定键映射到的值,如果此map不包含键的映射,则返回 null
。
HashMap<Integer,String> hashMap = new HashMap<>();
hashMap.put(1,"数学");
hashMap.put(2,"语文");
hashMap.put(3,"英语");
String s = hashMap.get(2);
System.out.println(s); //语文
isEmpty()
如果此map不包含键值映射,则返回 true
。
HashMap<Integer,String> hashMap = new HashMap<>();
hashMap.put(1,"数学");
hashMap.put(2,"语文");
hashMap.put(3,"英语");
System.out.println(hashMap.isEmpty()); //false
keySet()
返回此map中包含的键的 Set 视图。
HashMap<Integer,String> hashMap = new HashMap<>();
hashMap.put(1,"数学");
hashMap.put(2,"语文");
hashMap.put(3,"英语");
Set<Integer> integers = hashMap.keySet();
System.out.println(integers); //[1, 2, 3]
merge(K key, V value, BiFunction<? super V, ? super V, extends V> remappingFunction)
如果指定的键尚未与值关联或与 null 关联,则将其与给定的非 null 值关联。
HashMap<Integer,String> hashMap = new HashMap<>();
hashMap.put(1,"数学");
hashMap.put(2,"语文");
hashMap.merge(1, "科学", (oldValue, newValue) -> oldValue + newValue);
hashMap.forEach((integer, s) -> System.out.print(integer + "-" + s +" "));//1-s数学科学 2-s语文
put(K key, V value)
将指定值与此map中的指定键相关联。
HashMap<Integer,String> hashMap = new HashMap<>();
hashMap.put(1,"数学");
hashMap.put(2,"语文");
hashMap.put(3,"英语");
hashMap.forEach((integer, s) -> System.out.print(integer + "-" + s)); //1-数学2-语文3-英语
putAll(Map <? extends K, ? extends V> m)
将指定map中的所有值复制到此map。
HashMap<Integer,String> hashMap = new HashMap<>();
HashMap<Integer,String> hashMap1 = new HashMap<>();
hashMap.put(1,"数学");
hashMap.put(2,"语文");
hashMap1.put(1,"科学");
hashMap.putAll(hashMap1);
hashMap.forEach((Integer,s)-> System.out.print(Integer + "-" + s) ); //1-科学2-语文
remove(Object key)
从此map中删除指定键的映射(如果存在)。
HashMap<Integer,String> hashMap = new HashMap<>();
hashMap.put(1,"数学");
hashMap.put(2,"语文");
hashMap.remove(1);
hashMap.forEach((Integer,s)-> System.out.println(Integer + "-" + s));//2-语文
size()
返回此map中键值映射的数量。
HashMap<Integer,String> hashMap = new HashMap<>();
hashMap.put(1,"数学");
hashMap.put(2,"语文");
System.out.println(hashMap.size()); //2
values()
返回此map中包含的值的Collection视图。
HashMap<Integer,String> hashMap = new HashMap<>();
hashMap.put(1,"数学");
hashMap.put(2,"语文");
System.out.println(hashMap.values()); //[数学, 语文]