1.11 Lambda表达式遍历Iterator迭代器
生活随笔
收集整理的這篇文章主要介紹了
1.11 Lambda表达式遍历Iterator迭代器
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Java使用Lambda表達式遍歷Iterator迭代器
Java 8 為 Iterator 引入了一個 forEachRemaining(Consumer action) 默認方法,該方法所需的 Consumer 參數同樣也是函數式接口。當程序調用 Iterator 的 forEachRemaining(Consumer action) 遍歷集合元素時,程序會依次將集合元素傳給 Consumer 的 accept(T t) 方法(該接口中唯一的抽象方法)。
java.util.function 中的 Function、Supplier、Consumer、Predicate和其他函數式接口被廣泛用在支持 Lambda 表達式的 API 中。“void accept(T t);”是 Consumer的核心方法,用來對給定的參數 T 執行定義操作。
如下程序示范了使用 Lambda 表達式來遍歷集合元素。
import java.util.Collection; import java.util.HashSet; import java.util.Iterator;public class Test {public static void main(String[] args) {//創建一個集合Collection objs=new HashSet();objs.add("111");objs.add("222");objs.add("333");objs.add("444");objs.add("555");// 獲取objs集合對應的迭代器Iterator it = objs.iterator();// 使用Lambda表達式(目標類型是Comsumer)來遍歷集合元素it.forEachRemaining(obj -> System.out.println("迭代集合元素:" + obj));}}輸出結果為:
迭代集合元素:111 迭代集合元素:222 迭代集合元素:333 迭代集合元素:444 迭代集合元素:555上面程序中 it.forEachRemaining(obj -> System.out.println("迭代集合元素:" + obj));代碼調用了 Iterator 的 forEachRemaining() 方法來遍歷集合元素,傳給該方法的參數是一個 Lambda 表達式,該 Lambda 表達式的目標類型是 Consumer,因此上面代碼也可用于遍歷集合元素。
總結
以上是生活随笔為你收集整理的1.11 Lambda表达式遍历Iterator迭代器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 1.10 Iterator(迭代器)遍历
- 下一篇: 1.13 Predicate操作Coll