if(a.get(i).equals(b.get(j)))   
                  {a.remove(i);break;}   
              c.add(a.get(i)); 

解决方案 »

  1.   

    if(a.get(i).equals(b.get(j))) //这个成立了,下面的add就没有用了  
      {a.remove(i);break;}   
      c.add(a.get(i));
      

  2.   

    c.add(a.get(i)); //说不定会报异常
      

  3.   


    if(a.get(i).equals(b.get(j)))   
      {a.remove(i);break;}   
      c.add(a.get(i)); 
    a中i元素都已经删除了,下面的add会加入错误的元素或异常。
    应该改为if(a.get(i).equals(b.get(j))){
        a.remove(i);
        c.add(a.get(i));
        break;
    }   
      

  4.   

    写错,应该是:if(a.get(i).equals(b.get(j))){
        c.add(a.get(i));
        a.remove(i);
        break;
    }   
    或if(a.get(i).equals(b.get(j))){
        a.remove(i);
        c.add(b.get(j));
        break;
    }   
      

  5.   

    if(a.get(i).equals(b.get(j)))   
      {a.remove(i);}
      b.add(a.get(i)); 
      break;
      

  6.   

    [Quote=引用 9 楼 natalya13 的回复:]
    if(a.get(i).equals(b.get(j)))  
      {a.remove(i);break;}  
      c.add(a.get(i)); 
    a中i元素都已经删除了,下面的add会加入错误的元素或异常。如果i后面还有元素,后面的数不会自动补上去吗