Java创建subList并从之前的List中删除值

Eri*_*rik 6 java

我想在Java中创建一个subList,并从上一个List中删除subList中的值.我的程序正确创建了subList,但它没有从previousList中删除正确的值.

我的代码:

for(int i=0; i<4; i++){
     List<Object> sub=new ArrayList<Object>(prevoiusList.subList(0,6));

     for (int j=0; j<6; j++){
         previousList.remove(j);
     }
}    
Run Code Online (Sandbox Code Playgroud)

Bob*_*der 10

首先j=0,您删除第一个元素.这样做时你会移动所有其他元素,所以第二个元素变为第一个,依此类推.

在下一次迭代中j=1,所以你删除第二个元素,原来是第三个元素......

要解决此问题,请仅使用0索引或迭代器.