Java8中Stream的一些神操作
Java8對集合提供了一種流式計(jì)算的方式,這種風(fēng)格將要處理的元素集合看 作一種流, 流在管道中傳輸, 并且可以在管道的節(jié)點(diǎn)上進(jìn)行處理, 比如 篩選, 排序,聚合等。
Stream API 基本都是返回Stream本身,這樣多個(gè)操作可以串聯(lián)成一個(gè)管 道, 如同流式風(fēng)格(fluent style)。 這樣做可以對操作進(jìn)行優(yōu)化, 比 如延遲執(zhí)行(laziness)和短路( short-circuiting)
stream() 為集合創(chuàng)建串行流
parallelStream() 為集合創(chuàng)建并行流
private void createStream(){ Stream<Integer> stream = getList().stream(); Stream<Integer> parallelStream = getList().parallelStream(); }
stream提供了一個(gè)內(nèi)部遍歷的方式forEach(),通過forEach可以大大簡化集 合遍歷的代碼。
private void forEach(){ getList().forEach(i->System.out.println(i)); }
stream提供了一個(gè)用于數(shù)據(jù)過濾的方法filter(),與stream的其他API配合 使用可以簡單的實(shí)現(xiàn)數(shù)據(jù)過濾。
stream提供了一個(gè)用于數(shù)據(jù)映射的方法map(),與stream的其他API配合使用 可以簡單的實(shí)現(xiàn)數(shù)據(jù)映射。
stream提供了一個(gè)用于數(shù)據(jù)映射的方法sorted(),與stream的其他API配合 使用可以簡單的實(shí)現(xiàn)數(shù)據(jù)排序。
Collectors 類實(shí)現(xiàn)了很多歸約操作,例如將流轉(zhuǎn)換成集合和聚合元素。 Collectors 可用于返回列表或字符串。
一些產(chǎn)生統(tǒng)計(jì)結(jié)果的收集器也非常有用。它們主要用于int、double、long 等基本類型上,它們可以用來產(chǎn)生類似如下的統(tǒng)計(jì)結(jié)果。
總結(jié)
到此這篇關(guān)于Java8中Stream的文章就介紹到這了,更多相關(guān)Java8 Stream神操作內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
slf4j與jul、log4j1、log4j2、logback的集成原理
這篇文章主要介紹了slf4j與jul、log4j1、log4j2、logback的集成原理,以及通用日志框架與具體日志實(shí)現(xiàn)系統(tǒng)的機(jī)制機(jī)制介紹,包括依賴的jar包,jar沖突處理等2022-03-03Java實(shí)現(xiàn)驗(yàn)證碼的產(chǎn)生和驗(yàn)證
這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)驗(yàn)證碼的產(chǎn)生和驗(yàn)證,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2012-01-01詳解Java并發(fā)編程基礎(chǔ)之volatile
volatile作為Java多線程中輕量級的同步措施,保證了多線程環(huán)境中“共享變量”的可見性。這里的可見性簡單而言可以理解為當(dāng)一個(gè)線程修改了一個(gè)共享變量的時(shí)候,另外的線程能夠讀到這個(gè)修改的值。本文將詳解介紹Java并發(fā)編程基礎(chǔ)之volatile2021-06-06淺析SpringBoot多數(shù)據(jù)源實(shí)現(xiàn)方案
現(xiàn)在很多項(xiàng)目的開發(fā)過程中,可能涉及到多個(gè)數(shù)據(jù)源,像讀寫分離的場景,或者因?yàn)闃I(yè)務(wù)復(fù)雜,導(dǎo)致不同的業(yè)務(wù)部署在不同的數(shù)據(jù)庫上,那么這樣的場景,我們應(yīng)該如何在代碼中簡潔方便的切換數(shù)據(jù)源呢,本文介紹SpringBoot多數(shù)據(jù)源實(shí)現(xiàn)方案,感興趣的朋友跟隨小編一起看看吧2024-02-02Java面試題之HashSet的實(shí)現(xiàn)原理
這篇文章主要介紹了Java面試題之HashSet的實(shí)現(xiàn)原理,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-01-01