遍历Map

转自(https://www.cnblogs.com/xianfengzhike/p/9140866.html)

 

keySet是键的集合,Set里面的类型及key的类型

entrySet是 键-值 对的集合,Set里面的类型是Map.Entry.

1.keySet()

Map map=new HashMap();

Iterator it=map.keySet().iterator();

Object key;

Object value;

while(it.hasNext()){

key=it.next();

value=map.get(key);

System.out.println(key+":"+value);

}

2.entrySet()

Map map=new HashMap();

Iterator it=map.entrySet().iterator();

Object key;

Object value;

while(it.hasNext()){

Map.Entry entry=(Map.Entry)it.next();

key=entry.getKey();

value=entry.getValue();

System.out.println(key+"="+value);

}

 

 

package com.Text;

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

public class Maps {

public static void main(String[] args) {
Map<String,String> map=new HashMap<String,String>();
map.put("1", "value1");
map.put("2", "value2");
map.put("3", "value3");
//第一种:普遍使用,二次取值
System.out.println("通过Map.keySet遍历key和value");
for(String key:map.keySet())
{
String value=map.get(key);
System.out.println(key+":"+value);
}
System.out.println("-------------------------");
//第二种:
System.out.println("通过Map.entrySet使用iterator遍历key和value");
Iterator<Map.Entry<String,String>> it=map.entrySet().iterator();
while(it.hasNext()) {
Map.Entry<String, String> entry=it.next();
String key=entry.getKey();
String value=entry.getValue();
System.out.println(key+":"+value);
}
System.out.println("-------------------------");
//第三种:推荐,尤其是容量大时
System.out.println("通过Map.entrySet遍历key和value");
for(Map.Entry<String, String> entry:map.entrySet()) {
String key=entry.getKey();
String value=entry.getValue();
System.out.println(key+":"+value);
}
System.out.println("-------------------------");
//第四种
System.out.println("通过map.values()遍历所有的value,但不能遍历key");
for(String value:map.values()) {
System.out.println("value="+value);
}
}



}

posted @ 2019-12-09 09:56  Li&Fan  阅读(157)  评论(0编辑  收藏  举报