我在替换数组列表中的项目时遇到问题。我搜索了灵魂,发现它是由 listIterator 完成的。所以我想实现它,但不知何故迭代器的“set”方法不可用。为什么?整件事都发生在@Repository
在我的 spring mvc 应用程序中。
private List<Car> listOfCars = new ArrayList<Car>();
listOfCars.add(...);
listOfCars.add(...);
listOfCars.add(...);
public void update(Car car) {
Iterator<Car> listIterator = listOfCars.listIterator();
while (listIterator.hasNext()) {
Car c = listIterator.next();
if(c.equals(car)){
listIterator.set(car);
}
}
程序无法解决listIterator.set()
- 这是不可用的。
最佳答案
如果您要使用 ListIterator
方法,请为 listIterator
变量使用 ListIterator
类型:
ListIterator<Car> listIterator = listOfCars.listIterator();
Iterator
没有 set
方法。
关于java - 用 listIterator 替换 ArrayList 中的项目 - 无法解决 listIterator.set(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47247502/