【发布时间】:2017-09-13 01:49:28
【问题描述】:
我正在尝试使用 remove 方法,但我搞砸了,因为我不断收到错误:
List<String> list1 = new ArrayList<String>();
list1.add("Apple");
list1.add("Bus");
list1.add("Cat");
list1.add("Dog");
String ne = list1.listIterator().next();
System.out.println(ne);
list1.listIterator().remove();
remove 语句抛出错误??谁能告诉我为什么? 当我只使用迭代器代替 listIterator 时,同样的事情?
【问题讨论】:
-
问题是当您第二次执行
list1.listIterator()时,您将获得一个新的 ListIterator 对象。.remove()只能在.next()或.previous()调用之后工作。通过分配给变量来重新使用第一个ListIterator。