一、Map.entry是什么?
- Map是java中的接口,Map.Entry是Map的一个内部接口。
- 此接口为泛型,定义为Entry<K,V>。它表示Map中的一个实体(一个key-value对)
- 接口中有getKey(),getValue方法(很重要的两个方法)
- Map.entry的实现类是Map子类里面的一个静态的内部类
二、Map如何遍历?
- V put(K key, V value):向Map中添加key-value
- V get(K key): 获取指定key的value,不存在返回null
- V remove(K key): 删除指定key的键值对,返回value
- Set< K > keySet(): 从Map中得到key的集合
- Set<Map.Entry<K, V>> entrySet(): 从Map集合中得到内部接口Entry的集合
原文链接:https://blog.csdn.net/qiukui111/article/details/104334174
四种遍历Map方式: 转载:链接
1 public static void main(String[] args) {
2
3 Map<String, String> map = new HashMap<String, String>();
4 map.put("1", "value1");
5 map.put("2", "value2");
6 map.put("3", "value3");
7
8 //第一种:普遍使用,二次取值
9 System.out.println("通过Map.keySet遍历key和value:");
10 for (String key : map.keySet()) {
11 System.out.println("key= "+ key + " and value= " + map.get(key));
12 }
13
14 //第二种
15 System.out.println("通过Map.entrySet使用iterator遍历key和value:");
16 Iterator<Map.Entry<String, String>> it = map.entrySet().iterator();
17 while (it.hasNext()) {
18 Map.Entry<String, String> entry = it.next();
19 System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
20 }
21
22 //第三种:推荐,尤其是容量大时
23 System.out.println("通过Map.entrySet遍历key和value");
24 for (Map.Entry<String, String> entry : map.entrySet()) {
25 System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
26 }
27
28 //第四种
29 System.out.println("通过Map.values()遍历所有的value,但不能遍历key");
30 for (String v : map.values()) {
31 System.out.println("value= " + v);
32 }
33 }