Java8對集合提供了一種流式計算的方式,這種風格將要處理的元素集合看 作一種流, 流在管道中傳輸, 并且可以在管道的節點上進行處理, 比如 篩選, 排序,聚合等。
Stream API 基本都是返回Stream本身,這樣多個操作可以串聯成一個管 道, 如同流式風格(fluent style)。 這樣做可以對操作進行優化, 比 如延遲執行(laziness)和短路( short-circuiting)
stream() 為集合創建串行流
parallelStream() 為集合創建并行流
private void createStream(){ Stream<Integer> stream = getList().stream(); Stream<Integer> parallelStream = getList().parallelStream(); }
stream提供了一個內部遍歷的方式forEach(),通過forEach可以大大簡化集 合遍歷的代碼。
private void forEach(){ getList().forEach(i->System.out.println(i)); }
stream提供了一個用于數據過濾的方法filter(),與stream的其他API配合 使用可以簡單的實現數據過濾。
stream提供了一個用于數據映射的方法map(),與stream的其他API配合使用 可以簡單的實現數據映射。
stream提供了一個用于數據映射的方法sorted(),與stream的其他API配合 使用可以簡單的實現數據排序。
Collectors 類實現了很多歸約操作,例如將流轉換成集合和聚合元素。 Collectors 可用于返回列表或字符串。
一些產生統計結果的收集器也非常有用。它們主要用于int、double、long 等基本類型上,它們可以用來產生類似如下的統計結果。
總結
到此這篇關于Java8中Stream的文章就介紹到這了,更多相關Java8 Stream神操作內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!
原文鏈接:https://juejin.cn/post/7025202317599178760