HashMap的关系图:

javascript map 清空 清空map使用哪个方法_Test


Map——>AbstractMap——>HashMap

HashMap常用方法:

1、put(K key, V value): 将键(key)/值(value)映射存放到Map集合中。

2、get(Object key): 返回指定键所映射的值,没有该key对应的值则返回 null。

3、size(): 返回Map集合中数据数量。

4、clear(): 清空Map集合。

5、isEmpty(): 判断Map集合中是否有数据,如果没有则返回true,否则返回false。

6、remove(Object key): 删除Map集合中键为key的数据并返回其所对应value值。

7、values(): 返回Map集合中所有value组成的以Collection数据类型格式数据。

8、containsKey(Object key): 判断集合中是否包含指定键,包含返回 true,否则返回false。

9、containsValue(Object value): 判断集合中是否包含指定值,包含返回 true,否则返回false。

10、keySet(): 返回Map集合中所有key组成的Set集合。

11、entrySet(): 将Map集合每个key-value转换为一个Entry对象并返回由所有的Entry对象组成的Set集合。

方法使用:

1、put(K key, V value) 将键(key)/值(value)映射存放到Map集合中。
2、get(Object key) 返回指定键所映射的值,没有该key对应的值则返回 null。
3、size() 返回Map集合中数据数量。
例如:

import java.util.HashMap;

public class Test {
	public static void main(String[] args) {
		HashMap<String ,Integer> map = new HashMap<>();
		map.put("徐冰", 100);
		map.put("萤火", 99);
		int i = map.get("萤火");  //i为key对应的value。
		System.out.println(i);
		System.out.println(map.size()); 
	}
}

输出:
99
2

4、clear() 清空Map集合。
5、isEmpty () 判断Map集合中是否有数据,如果没有则返回true,否则返回false。
例如:

import java.util.HashMap;

public class Test {
	public static void main(String[] args) {
		HashMap<String ,Integer> map = new HashMap<>();
		map.put("徐冰", 100);
		map.put("萤火", 99);
		System.out.println(map.isEmpty());
		map.clear();
		System.out.println(map.isEmpty());
	}
}

输出:
false
true

6、remove(Object key) 删除Map集合中键为key的数据并返回其所对应value值。
例如:

import java.util.HashMap;

public class Test {
	public static void main(String[] args) {
		HashMap<String ,Integer> map = new HashMap<>();
		map.put("徐冰", 100);
		map.put("萤火", 99);
		System.out.println(map.remove("萤火")); //返回value值。
		System.out.println(map);
	}
}

输出:
99
{徐冰=100}

7、values() 返回Map集合中所有value组成的以Collection数据类型格式数据。
例如,利用values方法for循环遍历HashMap的value:

import java.util.Collection;
import java.util.HashMap;

public class Test {
	public static void main(String[] args) {
		HashMap<String ,Integer> map = new HashMap<>();
		map.put("徐冰", 100);
		map.put("萤火", 99);
		Collection<Integer> value =map.values();
		for (Integer i : value) {
			System.out.println(i);
		}
	}
}

输出:
99
100

8、containsKey(Object key) 判断集合中是否包含指定键,包含返回 true,否则返回false 。
9、containsValue(Object value) 判断集合中是否包含指定值,包含返回 true,否则返回false。
例如:

import java.util.HashMap;

public class Test {
	public static void main(String[] args) {
		HashMap<String ,Integer> map = new HashMap<>();
		map.put("徐冰", 100);
		map.put("萤火", 99);
		System.out.println(map.containsKey("徐冰"));
		System.out.println(map.containsValue(99));
	}
}

输出:
true
true

10、keySet() 返回Map集合中所有key组成的Set集合。
例如,可以利用keySet方法进行一个对key—value的遍历:

import java.util.HashMap;
import java.util.Set;

public class Test {
	public static void main(String[] args) {
		HashMap<String ,Integer> map = new HashMap<>();
		map.put("徐冰", 100);
		map.put("萤火", 99);
		Set<String> set = map.keySet();
		for (String key : set) {
			System.out.println(key+":"+map.get(key));
		}
	}
}

输出:
萤火:99
徐冰:100

之前了解Set有iteritor方法,所以对key—value的遍历还有一个方法,对上面的方法增加代码:

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

public class Test {
	public static void main(String[] args) {
		HashMap<String ,Integer> map = new HashMap<>();
		map.put("徐冰", 100);
		map.put("萤火", 99);
		Set<String> set = map.keySet();
		for (String key : set) {
			System.out.println(key+":"+map.get(key));
		}
		
		System.out.println();
		
		Iterator<String> ite = set.iterator();  //使用了Set的iterator方法,增加了一种遍历方法。
		while(ite.hasNext())
		{
			String key = ite.next();
			System.out.println(key+":"+map.get(key));
		}
	}
}

输出:
萤火:99
徐冰:100

萤火:99
徐冰:100

11、entrySet() 将Map集合每个key-value转换为一个Entry对象并返回由所有的Entry对象组成的Set集合。
例如,可以利用entrySet方法进行一个对key—value的遍历,跟上面一样,有两个方法:

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

public class Test {
	public static void main(String[] args) {
		HashMap<String ,Integer> map = new HashMap<>();
		map.put("徐冰", 100);
		map.put("萤火", 99);
		Set<Entry<String, Integer>> set = map.entrySet();
		for (Entry<String, Integer> entry : set) {
			System.out.println(entry.getKey()+":"+entry.getValue());
		}
		
		System.out.println();
		
		Iterator<Entry<String, Integer>> ite = set.iterator();
		while(ite.hasNext())
		{
			Entry<String, Integer> entry = ite.next();
			System.out.println(entry.getKey()+":"+entry.getValue());
		}
	}
}

输出:
萤火:99
徐冰:100

萤火:99
徐冰:100