【发布时间】:2015-09-08 15:58:15
【问题描述】:
我是java初学者。我编写了以下代码来查找重复项并在 LinkedList 中删除它们,但我得到了 ArrayIndexOutOfBounds 异常。请帮忙。提前致谢。
import java.util.*;
public class LinkedListEx
{
public static void main(String[] args)
{
LinkedList<Integer> l1 = new LinkedList<Integer>();
l1.add(1);
l1.add(2);
l1.add(1);
l1.add(4);
l1.add(1);
System.out.println(l1);
int i = l1.size();
for(int j=0;j<i;j++)
{
for(int k=j+1;k<i;k++)
{
if(l1.get(j) == l1.get(k)){
l1.remove(k);
}
}
}
}
}
【问题讨论】:
-
问题是 int k=j+1 在第二个循环中检查是否对列表有效然后进入该循环。
-
你能使用其他数据结构吗?
-
@StackFlowed - 不 - 它的
j<i- 应该是j<i-1。
标签: java collections linked-list