Stream提供的常用操作有:
轉(zhuǎn)換操作:map()律杠,filter()第岖,sorted()难菌,distinct();
合并操作:concat()蔑滓,flatMap()郊酒;
并行處理:parallel();
聚合操作:reduce()键袱,collect()燎窘,count(),max()蹄咖,min()褐健,sum(),average()澜汤;
其他操作:allMatch(), anyMatch(), forEach()蚜迅;
Stream 是從Java8開始引入的一個(gè)流式API,它代表任意Java對(duì)象的序列。通常用于內(nèi)存計(jì)算和業(yè)務(wù)邏輯處理俊抵。其遵循了惰性計(jì)算的思想谁不,可以存儲(chǔ)無(wú)限個(gè)元素,但是實(shí)際上這些元素可能并沒有真實(shí)存儲(chǔ)在內(nèi)存中徽诲,而是在最后輸出時(shí)才會(huì)計(jì)算并生成對(duì)應(yīng)的元素刹帕。一個(gè)Stream對(duì)象可以很方便的轉(zhuǎn)換為另一個(gè)Stream對(duì)象,在轉(zhuǎn)換的時(shí)候谎替,并沒有對(duì)存儲(chǔ)元素做了轉(zhuǎn)換偷溺,實(shí)際上只存儲(chǔ)了轉(zhuǎn)換規(guī)則,并沒有任何計(jì)算發(fā)生钱贯,只有在最后輸出的時(shí)候挫掏,才去真正計(jì)算。