java中列表迭代器在最后一次调用 next 后调用了 remove 什么意思

看API文档,ListIterator接口中的remove方法里有这么一句话IllegalStateException-既没有调用next也没有调用previous,或者... 看API文档,ListIterator接口中的remove方法里有这么一句话
IllegalStateException
- 既没有调用 next 也没有调用 previous,或者在最后一次调用 next 或
previous 后调用了 remove 或 add。
我想知道这个最后一次调用next后调用remove是什么情况?
我自己测试的小程序如下:
ArrayList al2 = new ArrayList();
al2.add("123");
al2.add("13");
al2.add("23");
al2.add("1234");

ListIterator it = al2.listIterator();
System.out.println(al2);
while(it.hasNext()){
System.out.println("下一个元素的索引是:"+it.nextIndex());

Object obj = it.next();
System.out.println(obj);
}
it.remove();
System.out.println(al2);

然后发现没报异常啊,而且把最后一个元素移除了。。。
哦。。看明白了- -
展开
 我来答
henryld
2014-03-05 · TA获得超过282个赞
知道小有建树答主
回答量:535
采纳率:0%
帮助的人:331万
展开全部
他是删除当前指针所在位置的元素。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式