解决方案 »

  1.   

    无法得到id的值,又要取出id为1的对象放到list2中
    每个map存放的东西不一样,只有一个属性不同看不出来测试程序和问题有啥关系
    好吧,我理解能力有限不太明白你的意思难道是说不知道map里放的是什么但要找出存了id且id为1的
      

  2.   

    没看明白问题,要获取id也是可以的,通过keySet就可以了。
      

  3.   

    就是说List中存放了N个map,map里面有个属性为a,现在要的就是把list中a属性相同的另存到list2中
      

  4.   


    for (int i = 0; i < list.size(); ++i) {
    Map map = (Map) list.get(i);
    Iterator it = map.keySet().iterator();
    while (it.hasNext()) {
    Object key = it.next();
    Object value = map.get(key);
    if (value.toString().equals("a")) {
    list2.add(map);
    break;
    }
    }
    }
      

  5.   

    4楼给的情况是知道value是多少的情况下,就没有问题,但是如果是不知道的情况下就不行啦。但是还是要感谢
      

  6.   

    把list中a属性是1的另存到list2中?
      

  7.   

    不是,那个是打个比方,
    List中存放了多个对象,现在要将对象中的name属性取出并判断是否与下一个对象的name属性是否相同,如果相等就把该对象存放到另一个List中
      

  8.   


    也就是说map里key是a但value不确定是吧?会不会出现这种情况
    Map map1 = new HashMap();
    map1.put("a", "1");
    map1.put("name", "a");
    Map map2 = new HashMap();
    map2.put("a", "1");
    map2.put("name", "b");
    Map map3 = new HashMap();
    map3.put("a", "2");
    map3.put("name", "c");
    Map map4 = new HashMap();
    map4.put("a", "2");
    map4.put("name", "d");
      

  9.   


    这种情况是把a为1的放入list2中,还是把a为2的放入list2中?还是说a为1的放入list2中,a为2的放入list3中?
      

  10.   


    那你循环这个list,直接取出当前index的map,取出值与index+1的map的值比较下不就行了?
    代码不写了,太简单了
      

  11.   

    先把a为1的放入list2中,然后我进行逻辑处理之后,清空list2,然后再把a为2的放入list2中,进行逻辑处理,以此类推
      

  12.   


    那你循环这个list,直接取出当前index的map,取出值与index+1的map的值比较下不就行了?
    代码不写了,太简单了小弟初学,麻烦大神给个代码,学习学习
      

  13.   

    map里的key和value都能取到了,然后想怎么处理就怎么处理
    还有什么问题?
      

  14.   

    嗯,我的也是这个问题。不过我的比这个还麻烦点,我的list里面要把四个相同条件的对象单独放到另外一个新的list里面,有多少个就新建多少个list求大神帮忙