1
按照主題:如何獲得流中大於10的第一個數字?Java 8:如何獲取流中第一個大於10的數字?
有什麼方法可以幫助stream()
在這種情況下?
我希望只要流達到第一個元素10以上,它將返回它,而不會循環其餘的。 (種「循環」) 可能嗎?
按照主題:如何獲得流中大於10的第一個數字?Java 8:如何獲取流中第一個大於10的數字?
有什麼方法可以幫助stream()
在這種情況下?
我希望只要流達到第一個元素10以上,它將返回它,而不會循環其餘的。 (種「循環」) 可能嗎?
// new Random().ints() // or whatever the stream is
.filter(i -> i > 10).findFirst();
findFirst
回報某種類型的Optional
,所以你需要決定如何處理它,如果你沒有找到一個匹配。
這是類似這樣的循環:
for (int i : ...)
if (i > 10) // "filter"
return i; // "findFirst" (may or may not be present)
一個'Optional'(或者'IntOptional'在這種情況下)具有'.isPresent() '所以你可以使用這種方法 – fge
過濾用'X-> X> 10',然後得到的第一個? – ZhongYu
@ bayou.io我知道,但是我的問題是沒有解析整個流得到第一個的函數是什麼。 – Rollerball
如果流中沒有這樣的值,該怎麼辦? – fge