我想把添加的 数字0更改成1,可在执行的过程中又把原来添加的内容重复了一遍,该把清空方法添加到什么地方才会得到更改之后的内容呢
        Object obj[]=col.toArray();
        for (int i=0;i<obj.length;i++)
         {
          if(obj[i].equals(1))
          {
          obj[i]=0;
          }
            col.add(obj[i]);
         }

解决方案 »

  1.   

    Object obj[]=col.toArray();
    col.clear();//这里
      

  2.   

    List list=new ArrayList();
    for (int i = 0; i < list.size(); i++) {
         if(list.get(i).equals("0")){
    list.set(i, "1")
         }
    }
    不知道你是什么集合,以上代码仅供参考
      

  3.   


      Object obj[]=col.toArray();
      for (int i=0;i<obj.length;i++)
      {
      if(obj[i].equals(0))
      {
      obj[i]=1;
      }
      //col.add(obj[i]);这句多余的,不要
      }
      

  4.   

    人家是要忘col这个集合里存的
      

  5.   

    一楼正解 
    开始的时候col转化为数组 但是col的实际内容没有改变
    在后面你只是改变了obj数组中的东西然后在加到col中 这时候加入的是在原先的后面 
    我博客有集合类的介绍http://blog.csdn.net/mengxiangyue/article/details/6876768可以看看
      

  6.   

    直接使用Collections.replaceAll(List<T> list,T oldValue, T newValue)可以对集合类List的值进行替换