【Java 8 新特性】Java Stream通過findFirst()查找滿足條件的一條數據


Stream的findFirst方法在此流中查找第一個元素作為Optional。

如果流中沒有元素,findFirst返回空的Optional。

如果流沒有順序,那么findFirst可以選擇任何元素。

如果findFirst選擇的元素為null,它將拋出NullPointerException。

在javadoc中的findFirst聲明

Optional<T> Findfirst()

返回:findFirst方法返回Optional包含流中第一個元素的元素。
異常:如果選擇null值,findFirst將拋出NullPointerException。

findFirst是短路終端操作(short-circuiting terminal operation),流操作是一組中間操作和終端操作,如果中間操作可以為無限輸入生成有限流,則它是短路(short-circuiting)。

下面我們來看一組例子

示例1:假設我們有一個整數流,並對其調用findFirst方法。

Stream.of(50, 60, 70).findFirst() .ifPresent(s -> System.out.println(s));
輸出是50,這是流的第一個元素。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM