Java循环遍历输出map方法

1、使用entries来遍历(entrySet()的返回值也是返回一个Set集合,此集合的类型为Map.Entry)
使用说明:该方法只能用于java 5或者更高的版本;如果遍历的map是一个空值,循环会抛出NUllPointerException,因此在遍历之前必须检查是否为空!

Map<Object, Object> map = new HashMap<Object, Object>();
for(Map.Entry<Object, Object> entry : map.entryset()){
	System.out.print("Key = "+entry.getKey()+",value="+entry.getValue());
}

2、使用keySet或者values来进行遍历

使用说明:该方法相对前者快了10%左右;

Map<Object, Object> map = new HashMap<Object, Object>();
for(Object key : map.keySet){	//只能遍历key
	System.out.print("Key = "+key);
}


for(Object value : map.values){  //只能遍历value
	System.out.print("Value = "+value);
}

3、使用Iterator进行遍历

使用说明:在低版本的java中可以使用该方法;

Iterator<Map.Entry<String, String>> it = map.entrySet().iterator();
while (it.hasNext()) {
	Map.Entry<String, String> entry = it.next();
	System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
}

备注:对方法3中进行一些说明

//获得map的迭代器,用作遍历map中的每一个键值对

Iterator是迭代器,可以认为是HashMap。

map.entrySet()是把HashMap类型的数据转换成集合类型

map.entrySet().iterator()是去获得这个集合的迭代器,保存在iter里面。

while(iter.hasNext()) {

Entry obj = it.next();//就能获得map中的每一个键值对了

}

    原文作者:守护_潇潇
    原文地址: https://blog.csdn.net/laixiaobailing/article/details/41644327
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞