List<Map<String,Object>> 循环及循环过程中字符串拼接和int值叠加

来源:互联网 发布:国家药监局数据库查询 编辑:程序博客网 时间:2024/05/17 23:25
List<Map<String,Object>> l=new ArrayList<Map<String,Object>>();
Map<String,Object> map=new HashMap<String, Object>();
map.put("a", 1);
map.put("b", "2");
Map<String,Object> map1=new HashMap<String, Object>();
map1.put("a", 3);
map1.put("d", "4");
l.add(map);

l.add(map1);

//第一种循环方法

int sun=0;
 StringBuffer str = new StringBuffer(); 
for(Map<String,Object> m:l){
str.append(m.get("a"));
sun+=(Integer) m.get("a");
for(String s:m.keySet()){
 //最里层循环是循环map

//循环次数少map里面存在的(key,value)对数量
}
}
System.out.println("第一个str的值:"+str); //输出13
System.out.println("sun:"+sun);//输出4

//第二种循环的方法

 int sun1=0;
StringBuffer str1 = new StringBuffer();
for (int i = 0; i < l.size(); i++) {

sun1+=(Integer) l.get(i).get("a");
str1.append(l.get(i).get("a"));
for (int j = 0; j < l.get(i).size(); j++) {
System.out.println(l.get(i).get("a")); //输出1133因为有两个map 两个map里面(key,value)共有4对循环4次 循环相当于金字塔:第一次循环先循环最顶端,////第二次再循序顶端然后才循环下一层,层数即循环次数
}
}
System.out.println("外层str1"+str1); //13
 System.out.println("外层sun1:"+sun1);

0 0
原创粉丝点击