下次执行next()方法返回的元素其实还是elementData[10]也就是List补位后正确的下一个元素,cursor变成了11,lastRet是10 总结:使用迭代器遍历时ArrayList会用lastRet和cursor两个变量来维护当前遍历的元素索引和下一次需要遍历元素的索引,通过这两个变量就可以实现迭代中正确的删除某个位置的元素。
下次执行next()方法返回的元素其实还是elementData[10]也就是List补位后正确的下一个元素,cursor变成了11,lastRet是10 总结:使用迭代器遍历时ArrayList会用lastRet和cursor两个变量来维护当前遍历的元素索引和下一次需要遍历元素的索引,通过这两个变量就可以实现迭代中正确的删除某个位置的元素。