位置:首頁 > 軟件操作教程 > 編程開發(fā) > Java > 問題詳情

Java操作應(yīng)用——靈活使用Stream

提問人:ylm發(fā)布時(shí)間:2020-09-29

Stream是JDK8的新特性,任何標(biāo)注了@FunctionalInterface的接口都能使用Stream流來處理數(shù)據(jù)。
很多同學(xué)知道函數(shù)式編程很強(qiáng)大,也知道怎么用,但是實(shí)際應(yīng)用起來總會摸不著頭腦。
1.遍歷
只要了解了Stream的使用基本都會用它來遍歷。但是什么時(shí)候用map,什么時(shí)候用forEach,這是個(gè)問題。

其實(shí)實(shí)際項(xiàng)目中我們遍歷一個(gè)集合類,無非是兩類操作。第一種是對集合中元素的本身進(jìn)行操作(如字段值的修改),第二種是消費(fèi)集合中的元素,比如打印每個(gè)元素的某個(gè)值,或者讓另一個(gè)方法使用元素。當(dāng)然,還有第三種,就是過濾、聚合、排序,這些都是比較簡單的,我們這里不談。

針對第一種我們應(yīng)該把這種使用成為Function,這是一種給定T對象,返回R的函數(shù)式接口。詳情請看我之前的文章Function接口的使用。第二種其實(shí)是Consumer,也就是消費(fèi)者。這是給定T,但不返回值的函數(shù)式接口。

其實(shí)我們只看map里面的參數(shù)也知道,第一類的操作用map就行了。

繼續(xù)查找其他問題的答案?

相關(guān)視頻回答
回復(fù)(0)
返回頂部