java迭代器不会从列表中删除特定项
我试图从列表中删除一个特定的项,但迭代器只是不删除,它打印一条消息,但该项保留在那里(列表上)。谁能帮帮我吗
方法:
public void removerItemLista(Material pegarMaterial) {
Iterator<PegaMaterial> pegaMaterialIterator = materials.iterator();
while (pegaMaterialIterator.hasNext()){
if (pegaMaterialIterator.next().equals(pegarMaterial)) {
pegaMaterialIterator.remove();
}
}
System.out.println("Todos os " + pegarMaterial + " foram removidos da lista");
System.out.println(materials.size());
}
如果你需要更多的代码,请告诉我,谢谢你的帮助
@Edit:我刚刚发现了从java 8中删除的功能,我尝试过这样做,但也不起作用:
materials.removeIf(material -> material.equals(pegarMaterial));
共 (0) 个答案