您的位置:首页 > 其它

Map.Entry 和 Map.entrySet() ,用类遍历hashMap,hashTable

2007-04-23 22:38 399 查看
最近再写一段很恶心的系统代码,上网搜索资料时,偶然见看到这篇文章不错,给了我很多的启发。先收藏一下,作为以后开发备用资料。希望看到的朋友也能多多学习学习!

发现HashMap 用到下面的格式 ,直接循环遍历整个hashMap hashTable

返回的 set 中的每个元素都是一个
Map.Entry
类型。

private Hashtable<String, String> emails = new Hashtable<String, String>();

// 方法一: 用entrySet()
// Iterator it = emails.entrySet().iterator();
// while(it.hasNext()){
// Map.Entry m=(Map.Entry)it.next();
// logger.info("email-" + m.getKey() + ":" + m.getValue());
// }

// 方法二:直接再循环中
for (Map.Entry<String, String> m : emails.entrySet()) {

logger.info("email-" + m.getKey() + ":" + m.getValue());
}

// 方法三:用keySet()
Iterator it = emails.keySet().iterator();
while (it.hasNext()){
String key;
key=(String)it.next();
logger.info("email-" + key + ":" + emails.get(key));
}



另外 我们可以先把hashMap 转为集合Collection,再迭代输出,不过得到的对象

Map aa = new HashMap();
aa.put("tmp1", new Object()); //追加 替换用同样的函数.
aa.remove("temp1"); //删除
for (Iterator i = aa.values().iterator(); i.hasNext(); ) {
Object temp = i.next();
} //遍历
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: