Java HashMap遍历菜鸟小白求解 刚学Java,在遍历HashMap时不太懂,请问这种遍历如何遍历List<Map<String, Object>>。求高手给个示例地址。还有我打算遍历第一个之后第二次遍历第5个,如何实现啊!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 List 直接用get(index)方法就好了,你要遍历第五个就get(4); import java.util.*;import java.util.Map.Entry;public class test { public static void main(String[] args) { List<Map<String, Object>> list = new ArrayList<Map<String, Object>>(); //在这里也可以用list.get(i)来取得第i个元素 Iterator it = list.iterator(); while (it.hasNext()) { Map<String, Object> map = (Map) it.next(); Set<Entry<String, Object>> entrySet = map.entrySet(); for (Entry<String, Object> entry : entrySet) { //do something................... } } }} List<HashMap<String,Object>> list = new ArrayList<HashMap<String, Object>>(); for(int i = 0 ;i < list.size();){ HashMap<String,Object> temp = list.get(i); i += 4; } 正解。使用KeySet遍历所有的Key值。然后通过Key值来遍历值。HashMap遍历的关键点。就是遍历Key值。 package com.alaric.test;import java.util.ArrayList;import java.util.Iterator;import java.util.List;import java.util.Map;import java.util.Map.Entry;import java.util.Set;/** * * @Description : * @author alaric * @version 1.0 * @created 2012 May 12, 2012 8:31:23 PM * @fileName com.alaric.test.Test.java */public class Test { public static void main(String[] args) { List<Map<String, Object>> list = new ArrayList<Map<String, Object>>(); /** * list 可以用for each 来遍历 也可用迭代器来遍历 */ for(Map<String, Object> map:list){ Iterator<String> iterator = map.keySet().iterator(); while (iterator.hasNext()) { String key = iterator.next(); Object obj = map.get(key); } } /** * map 可以用for each 来遍历 也可用迭代器来遍历 */ Iterator <Map<String,Object>>it = list.iterator(); while (it.hasNext()) { Map<String, Object> map = (Map<String,Object>) it.next(); Set<Entry<String, Object>> entrySet = map.entrySet(); for (Entry<String, Object> entry : entrySet) { //do something................... } } } }建议你好好掌握下j2se基础,比如集合,异常,io,多线程这些基础,基础掌握了,这个问题有很多种做法,而且每种做法的性能也不一样。http://www.happyalaric.com alaric 个人技术博客站欢迎你浏览。 前几天去一家国企面试,遇到了一道面试题 java方法重载问题 如何使用List Interface 问题编号005:网上下载的ISO格式的软件怎样安装?(不通过光驱) 怎样可以让页面静止,即不可点击?高手的近。。。 超级菜鸟求救。。估计是关于环境变量问题的。 经常碰到“堆栈”,但“堆”和“栈”的作用又不一样,那么“堆栈”到底是“堆”还是“栈”? 为什么scjp的教材里说true,false,null不是关键字,而在程序又不能使用它们做变量名 如何使applet能够访问本地资源 紧急求救,在线等!谢谢。 TCP端口监听遇到难题。。求助 java 匿名内部类
import java.util.Map.Entry;public class test { public static void main(String[] args) {
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
//在这里也可以用list.get(i)来取得第i个元素
Iterator it = list.iterator();
while (it.hasNext()) {
Map<String, Object> map = (Map) it.next();
Set<Entry<String, Object>> entrySet = map.entrySet();
for (Entry<String, Object> entry : entrySet) {
//do something...................
}
} }
}
List<HashMap<String,Object>> list = new ArrayList<HashMap<String, Object>>();
for(int i = 0 ;i < list.size();){
HashMap<String,Object> temp = list.get(i);
i += 4;
}
正解。使用KeySet遍历所有的Key值。然后通过Key值来遍历值。HashMap遍历的关键点。就是遍历Key值。
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
/**
*
* @Description :
* @author alaric
* @version 1.0
* @created 2012 May 12, 2012 8:31:23 PM
* @fileName com.alaric.test.Test.java
*/
public class Test { public static void main(String[] args) {
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
/**
* list 可以用for each 来遍历 也可用迭代器来遍历
*/
for(Map<String, Object> map:list){
Iterator<String> iterator = map.keySet().iterator();
while (iterator.hasNext()) {
String key = iterator.next();
Object obj = map.get(key);
}
}
/**
* map 可以用for each 来遍历 也可用迭代器来遍历
*/
Iterator <Map<String,Object>>it = list.iterator();
while (it.hasNext()) {
Map<String, Object> map = (Map<String,Object>) it.next();
Set<Entry<String, Object>> entrySet = map.entrySet();
for (Entry<String, Object> entry : entrySet) {
//do something...................
}
} }
}
建议你好好掌握下j2se基础,比如集合,异常,io,多线程这些基础,基础掌握了,这个问题有很多种做法,而且每种做法的性能也不一样。
http://www.happyalaric.com alaric 个人技术博客站欢迎你浏览。