java中怎么遍历HashMap
2个回答
2013-10-21
展开全部
一.
HashMap staff = new HashMap();
添加关键字值对,自己写
遍历
Set entries = staff.entrySet();
Iterator iter = entries.iterator();
while(iter.hasNext())
{
Map.Entry entry = (Map.Entry)iter.next();
Object key = entry.getKey();得么关键字
Object value = entry.getValue();得到值
}
二.
Map map = new HashMap();for (Iterator iter = map.entrySet().iterator(); iter.hasNext();) { Map.Entry entry = (Map.Entry) iter.next(); //map.entry 同时取出键值对 Object key = entry.getKey(); Object val = entry.getValue();}三.Map map = new HashMap();for (Iterator iter = map.keySet().iterator(); iter.hasNext();) { Object key = iter.next(); Object val = map.get(key);} Iterator是迭代器
对于keySet其实是遍历了2次,一次是转为iterator,一次就从hashmap中取出key所对于的value。而entryset只是遍历了第一次,他把key和value都放到了entry中,所以就快了。
对于我们做web的,可能不部分都是用vo对象或是form封装信息,所以用到hashmap时,其内存放的都是上面的对象。因此使用entryset遍历性能会有所提高。hashmap使用很多,比如导入信息时就要用到,因大部分导入的信息要去判断是否有重复的信息,这样就可以利用containsKey来进行处理了,而不用在插入的时候去进行处理。
HashMap staff = new HashMap();
添加关键字值对,自己写
遍历
Set entries = staff.entrySet();
Iterator iter = entries.iterator();
while(iter.hasNext())
{
Map.Entry entry = (Map.Entry)iter.next();
Object key = entry.getKey();得么关键字
Object value = entry.getValue();得到值
}
二.
Map map = new HashMap();for (Iterator iter = map.entrySet().iterator(); iter.hasNext();) { Map.Entry entry = (Map.Entry) iter.next(); //map.entry 同时取出键值对 Object key = entry.getKey(); Object val = entry.getValue();}三.Map map = new HashMap();for (Iterator iter = map.keySet().iterator(); iter.hasNext();) { Object key = iter.next(); Object val = map.get(key);} Iterator是迭代器
对于keySet其实是遍历了2次,一次是转为iterator,一次就从hashmap中取出key所对于的value。而entryset只是遍历了第一次,他把key和value都放到了entry中,所以就快了。
对于我们做web的,可能不部分都是用vo对象或是form封装信息,所以用到hashmap时,其内存放的都是上面的对象。因此使用entryset遍历性能会有所提高。hashmap使用很多,比如导入信息时就要用到,因大部分导入的信息要去判断是否有重复的信息,这样就可以利用containsKey来进行处理了,而不用在插入的时候去进行处理。
展开全部
public static void main(String[] args) {
Map map = new HashMap();
map.put("a", "a");
map.put("b", "b");
map.put("c", "c");
//a
Iterator it = map.keySet().iterator();
while(it.hasNext()){
String key = (String) it.next();
String val = (String) map.get(key);
System.out.println("key="+key+";value="+val);
}
//b
Set<Entry> array = map.entrySet();
for(Entry e:array){
String key = (String) e.getKey();
String val = (String) e.getValue();
System.out.println("key="+key+";value="+val);
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询