通常,您将需要循环浏览集合中的元素,例如,您可能要显示每个元素。最简单的方法是使用迭代器,是实现Iterator或ListIterator接口的对象。
Sr.No. | Method & Remark |
---|---|
1 | boolean hasNext() 如果有更多元素,则返回true。否则,返回false。 |
2 | Object next() 返回下一个元素。如果没有下一个元素,则抛出NoSuchElementException。 |
3 | void remove() 删除当前元素。如果尝试在未调用next()的情况下调用remove(),则抛出IllegalStateException。 |
Sr.No. | Method & Remark |
---|---|
1 | void add(Object obj) 将obj插入到元素的列表中,该元素将由下次调用next()返回。 |
2 | boolean hasNext() 如果存在下一个元素,则返回true。否则,返回false。 |
3 | boolean hasPrevious() 如果存在上一个元素,则返回true。否则,返回false。 |
4 | Object next() 返回下一个元素。如果没有下一个元素,则抛出NoSuchElementException。 |
5 | int nextIndex() 返回下一个元素的索引。如果没有下一个元素,则返回列表的大小。 |
6 | Object previous() 链接:https://www.learnfk.comhttps://www.learnfk.com/java/java-using-iterator.html 来源:LearnFk无涯教程网 返回上一个元素。如果没有上一个元素,则抛出NoSuchElementException。 |
7 | int previousIndex() 返回上一个元素的索引。如果没有上一个元素,则返回-1。 |
8 | void remove() 从列表中删除当前元素。如果在调用next()或previous()之前调用remove(),则抛出IllegalStateException。 |
9 | void set(Object obj) 将obj分配给当前元素。这是对next()或previous()的调用最后返回的元素。 |
这里演示Iterator和ListIterator的示例。它使用ArrayList对象,但是一般原则适用于任何类型的集合。
当然,ListIterator仅适用于实现List接口的那些集合。
import java.util.*; public class IteratorDemo { public static void main(String args[]) { // 创建数组列表 ArrayList al = new ArrayList(); // 将元素添加到数组列表 al.add("C"); al.add("A"); al.add("E"); al.add("B"); al.add("D"); al.add("F"); // 使用迭代器显示al的内容 System.out.print("Original contents of al: "); Iterator itr = al.iterator(); while(itr.hasNext()) { Object element = itr.next(); System.out.print(element + " "); } System.out.println(); // 修改被迭代的对象 ListIterator litr = al.listIterator(); while(litr.hasNext()) { Object element = litr.next(); litr.set(element + "+"); } System.out.print("Modified contents of al: "); itr = al.iterator(); while(itr.hasNext()) { Object element = itr.next(); System.out.print(element + " "); } System.out.println(); // 现在,向后显示列表 System.out.print("Modified list backwards: "); while(litr.hasPrevious()) { Object element = litr.previous(); System.out.print(element + " "); } System.out.println(); } }
这将产生以下输出-
Original contents of al: C A E B D F Modified contents of al: C+ A+ E+ B+ D+ F+ Modified list backwards: F+ D+ B+ E+ A+ C+
祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)