我需要迭代 ArrayList
的所有元素,除了最后一个。所以我想创建这样的迭代器。但是我不知道要实现整个迭代器,我只需要重写 hasNext()
方法,所以我想子类化一个“标准”迭代器。有什么办法吗?
最佳答案
我认为比覆盖默认迭代器更好的方法是自行迭代 ArrayList
。 ArrayList
定义了几个可以帮助您完成任务的方法:get(int)
和 size()
。
您要做的就是获取 ArrayList
中的元素总数(使用 size()
),然后遍历元素,在每次迭代中直接访问每个元素,使用get()
方法。您的代码看起来像这样:
for(int i = 0; i < myList.size() - 1; i++){
element = myList.get(i);
//do something
}
现在记住这个原则,您可以创建自己的类来迭代 ArrayList
。
关于java - 我可以继承 "standard"arraylist 迭代器吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15999765/