我有一个包含元素的列表,我想删除重复项。我尝试过这样做,但没有成功。
这是代码:
//list is the original list containing duplicates
Iterator it1=list.iterator();//iterator1
while (it1.hasNext())
{
Iterator it2=list.iterator(); //iterator2
if(it1.next().equals(it2.next()))
{
//liststeps is the list without duplicates
liststeps.add(it1.next());
}
}
System.out.println("multiple list "+list.toString());
System.out.println("list "+liststeps.toString());
结果:
multiple list [Open, In Progress, Waiting Customer Test, Closed, Open, Step11, Step22, Open, In Progress, Waiting Customer Test, Closed]
list [In Progress, Step11, In Progress]
最佳答案
使用 Set而不是列表。您可以使用addAll()将列表添加到集合中,然后将其转换回列表或仅使用集合。如果顺序相关,请使用 LinkedHashSet .
只是一个建议:使用 for-each而不是迭代器......它更容易:-)
关于java - 如何从列表中删除重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6705786/