Java集合框架的Iterator
接口允许我们访问集合的元素。它具有一个子接口ListIterator
。
所有Java集合都包含iterator()
方法。此方法返回用于迭代集合元素的迭代器实例。
迭代器的方法
Iterator
接口提供了4种方法,可用于对集合元素执行各种操作。
-
hasNext()
-如果集合中存在一个元素,则返回true
-
next()
-返回集合的下一个元素 -
remove()
-删除next()
返回的最后一个元素 -
forEachRemaining()
-对集合的每个剩余元素执行指定的操作
示例:迭代器的实现
在下面的示例中,我们在数组列表中实现了Iterator
接口的hasNext()
, next(),
remove()
和forEachRemining()
方法。
import java.util.ArrayList;
import java.util.Iterator;
class Main {
public static void main(String[] args) {
// Creating an ArrayList
ArrayList numbers = new ArrayList<>();
numbers.add(1);
numbers.add(3);
numbers.add(2);
System.out.println("ArrayList: " + numbers);
// Creating an instance of Iterator
Iterator iterate = numbers.iterator();
// Using the next() method
int number = iterate.next();
System.out.println("Accessed Element: " + number);
// Using the remove() method
iterate.remove();
System.out.println("Removed Element: " + number);
System.out.print("Updated ArrayList: ");
// Using the hasNext() method
while(iterate.hasNext()) {
// Using the forEachRemaining() method
iterate.forEachRemaining((value) -> System.out.print(value + ", "));
}
}
}
输出
ArrayList: [1, 3, 2]
Acessed Element: 1
Removed Element: 1
Updated ArrayList: 3, 2,
在上面的示例中,请注意以下语句:
iterate.forEachRemaining((value) -> System.put.print(value + ", "));
在这里,我们将lambda表达式作为forEachRemaining()
方法的参数传递。
现在,该方法将打印数组列表中所有剩余的元素。