java8使用流的filter來篩選數(shù)據(jù)的實現(xiàn)
更新時間:2021年03月19日 08:36:32 作者:程序員與王子喵
這篇文章主要介紹了java8使用流的filter來篩選數(shù)據(jù),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
本文主要介紹了java8使用流的filter來篩選數(shù)據(jù)的實現(xiàn),分享給大家,具體如下:
package chapter1; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import static java.util.stream.Collectors.groupingBy; public class stream { //比如說 你需要在一個列表中 篩選出所以重量大于150的蘋果,然后按照顏色分組 //按常規(guī)的篩選寫法 就是在循環(huán)里面 迭代篩選 public static void main(String[] args) { List<Apple> appleList = new ArrayList<>(); //常規(guī)寫法 Map<String, List<Apple>> AppMap = new HashMap<>(); for (Apple apple : appleList) { if (apple.getWeight() > 150) { //如果重量大于150 if (AppMap.get(apple.getColor()) == null) { //該顏色還沒分類 List<Apple> list = new ArrayList<>(); //新建該顏色的列表 list.add(apple);//將蘋果放進(jìn)去列表 AppMap.put(apple.getColor(),list);//將列表放到map中 }else { //該顏色分類已存在 AppMap.get(apple.getColor()).add(apple);//該顏色分類已存在,則直接放進(jìn)去即可 } } } //如上方式 就可以篩選出來所有的150克大小以上的蘋果,并按顏色分類 //方式二 使用java8提供的流api實現(xiàn) 這種叫內(nèi)部迭代 Map<String, List<Apple>> AppMap2=appleList.stream().filter((Apple a)->a.getWeight()>150) //篩選出大于150的 .collect(groupingBy(Apple::getColor)); //按顏色分組 最后得到map } class Apple { private String color;//顏色 private Integer weight; //重量 public String getColor() { return color; } public void setColor(String color) { this.color = color; } public Integer getWeight() { return weight; } public void setWeight(Integer weight) { this.weight = weight; } } }
到此這篇關(guān)于java8使用流的filter來篩選數(shù)據(jù)的實現(xiàn)的文章就介紹到這了,更多相關(guān)java8 filter篩選數(shù)據(jù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
淺談xml配置spring profiles的幾個注意點(diǎn)
這篇文章主要介紹了淺談xml配置spring profiles的幾個注意點(diǎn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07Spring導(dǎo)入properties配置文件代碼示例
這篇文章主要介紹了Spring導(dǎo)入properties配置文件代碼示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-10-10探討Java 將Markdown文件轉(zhuǎn)換為Word和PDF文檔
這篇文章主要介紹了Java 將Markdown文件轉(zhuǎn)換為Word和PDF文檔,本文通過分步指南及代碼示例展示了如何將 Markdown 文件轉(zhuǎn)換為 Word 文檔和 PDF 文件,需要的朋友可以參考下2024-07-07SpringBoot整合flyway實現(xiàn)步驟解析
這篇文章主要介紹了SpringBoot整合flyway實現(xiàn)步驟解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-08-08