zoukankan      html  css  js  c++  java
  • lambda java 实例

    源代码

        //pooo 是一个复合vo 代表一组数据的集合,内部包含其他vo和list,代码的目的是循环vo内部的数据 选出符合条件的特定数据
        Map<Long,List<String>> paaaaaMap=
                    pooo.getpaaaaas().stream().filter(paaaaa -> paaaaa.getcooooooos()!=null).filter(paaaaa-> paaaaa.getpooorrrrs()!=null).filter(paaaaa-> paaaaa.getpooorrrrs().stream().
                anyMatch(pooorrrr -> Arrays.asList(fbbbbrolesArray).contains(pooorrrr.getpaaaaaRole()))).
                filter(paaaaa -> paaaaa.getcooooooos().stream().filter(Objects::nonNull).anyMatch(cooooooo -> cooooooo.getContactType() == 777&&
                cooooooo.getcooooooo()!=null&&!cooooooo.getcooooooo().trim().isEmpty())).
                    collect(Collectors.toMap(paaaaa::getpaaaaaOID, paaaaa->paaaaa.getpooorrrrs().stream().map(pooorrrr::getpaaaaaRole).collect(Collectors.toList())));
             
            //  二次循环的目的是用map数据作为key获取外部数据
            Map<String,String> alertMap=
                    paaaaaMap.entrySet().stream().collect(Collectors.toMap(paaaaa->(String)hashmap.get(paaaaa.getKey()+"CCCCNUM"),
                    paaaaa->paaaaa.getValue().stream().reduce((one,tow)-> one+=tow).get()));

    分解

        //pooo 是一个复合vo 代表一组数据的集合,内部包含其他vo和list,代码的目的是循环vo内部的数据 选出符合条件的特定数据
        Map<Long,List<String>> paaaaaMap=
                    pooo.getpaaaaas().stream() //获取二层vo 并stream化
    .filter(paaaaa
    -> paaaaa.getcooooooos()!=null).filter(paaaaa-> paaaaa.getpooorrrrs()!=null) //第三层list校验
    .filter(paaaaa-> paaaaa.getpooorrrrs().stream(). //这里用filter检验 anymatch里返回的布尔类型数据 anyMatch(pooorrrr -> Arrays.asList(fbbbbrolesArray).contains(pooorrrr.getpaaaaaRole()))).//anymatch 返回一组循环里是否有一个符合,有就是true filter(paaaaa -> paaaaa.getcooooooos().stream().filter(Objects::nonNull).anyMatch(cooooooo -> cooooooo.getContactType() == 777&& cooooooo.getcooooooo()!=null&&!cooooooo.getcooooooo().trim().isEmpty())).//这里过滤的是三层list里的四层vo数据 collect(Collectors.toMap(paaaaa::getpaaaaaOID, paaaaa->paaaaa.getpooorrrrs().stream().map(pooorrrr::getpaaaaaRole).collect(Collectors.toList())));//最后合成map // 二次循环的目的是用map数据作为key获取外部数据 Map<String,String> alertMap= paaaaaMap.entrySet().stream().collect(Collectors.toMap(paaaaa->(String)hashmap.get(paaaaa.getKey()+"CCCCNUM"), paaaaa->paaaaa.getValue().stream().reduce((one,tow)-> one+=tow).get()));//reduce拼接循环数据
  • 相关阅读:
    测试计划设计
    测试方案
    使用gulp构建自动化工作流
    ESLint--定制你的代码规则
    Node.js学习笔记(一):快速开始
    React-Native性能优化点
    ES6笔记(一):ES6所改良的javascript“缺陷”
    windows下React-native 环境搭建
    使用ssh连接gitHub
    javascript中的prototype和constructor
  • 原文地址:https://www.cnblogs.com/funkboy/p/13631534.html
Copyright © 2011-2022 走看看