在本教程中,我們將通過一個示例來學(xué)習(xí)Java Iterator接口。
Java集合框架的Iterator接口允許我們訪問集合的元素。它有一個子接口ListIterator。
所有Java集合都包含一個iterator()方法。此方法返回用于迭代集合元素的迭代器實例。
Iterator接口提供了4種方法,可用于對集合元素執(zhí)行各種操作。
hasNext() - 如果集合中存在元素,則返回true
next() - 返回集合的下一個元素
remove() -刪除next()返回的最后一個元素
forEachRemaining() - 對集合的每個剩余元素執(zhí)行指定的操作
在下面的示例中,我們在數(shù)組列表中實現(xiàn)了Iterator接口的hasNext(),next(),remove()和forEachRemining()方法。
import java.util.ArrayList; import java.util.Iterator; class Main { public static void main(String[] args) { //創(chuàng)建一個ArrayList ArrayList<Integer> numbers = new ArrayList<>(); numbers.add(1); numbers.add(3); numbers.add(2); System.out.println("ArrayList: " + numbers); //創(chuàng)建Iterator的實例 Iterator<Integer> iterate = numbers.iterator(); //使用next()方法 int number = iterate.next(); System.out.println("訪問元素: " + number); //使用remove()方法 iterate.remove(); System.out.println("刪除元素: " + number); System.out.print("更新后的 ArrayList: "); //使用hasNext()方法 while(iterate.hasNext()) { //使用forEachRemaining()方法 iterate.forEachRemaining((value) -> System.out.print(value + ", ")); } } }
輸出結(jié)果
ArrayList: [1, 3, 2] 訪問元素: 1 刪除元素: 1 更新后的 ArrayList: 3, 2,
在上面的示例中,請注意以下語句:
iterate.forEachRemaining((value) -> System.put.print(value + ", "));
在這里,我們將lambda表達(dá)式作為forEachRemaining()方法的參數(shù)傳遞。
現(xiàn)在,該方法將打印數(shù)組列表中的所有其余元素。