• 使用stream流合并多个List(根据实体类特定属性合并)


    开发情景

    现有多个List集合,其中都是一样的实体类,这里我想根据实体类的特定属性将它们合并在一起,形成一个最终的List集合。
    这里主要用到了Stream流flatMap方法与reduce方法。

    flatMap:可以将多个Stream流合并在一起,形成一个Stream流。
    reduce:可以将Stram流中的元素按照规则聚合在一起。

    示例

    现有广告费表,由于广告费类别不同,所以分开了不同的Excel工作簿Sheet类别导入。
    这里需要根据 ASIN+店铺别名+月份(Excel工作簿名称开头提供)将多个集合的数据合并在一起。

    数据源

    这里要读取与合并的数据是从Excel工作簿的多个Sheet表读取过来的。
    在这里插入图片描述

    注意:并没有真的使用逻辑删除,这里只不过是为了后期可能用,所以加上了。

    create table if not exists amazon_monitor_adfee_real
    (
        ID                bigint unsigned auto_increment comment 'ID'
            primary key,
        ASIN              varchar(50)                              not null comment 'ASIN',
        SELLER_CODE       varchar(50)                              not null comment '店铺',
        SELLER_OTHER_CODE varchar(50)                              not null comment '店铺别名',
        DATE_MONTH        varchar(50)                              not null comment '实际广告费时间(月份)yyyy-MM',
        ACTUAL_SP_AD_FEE  decimal(15, 4) default 0.0000            null comment '实际SP广告费',
        ACTUAL_SD_AD_FEE  decimal(15, 4) default 0.0000            null comment '实际SD广告',
        ACTUAL_SB_AD_FEE  decimal(15, 4) default 0.0000            null comment '实际SB广告',
        ACTUAL_DSP_AD_FEE decimal(15, 4) default 0.0000            null comment '实际DSP广告',
        CREATE_USER_ID    varchar(32)                              null comment '创建人',
        CREATE_TIME       datetime       default CURRENT_TIMESTAMP 
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
  • 相关阅读:
    lvgl overview
    python 数据可视化
    java项目之抗疫医疗用品销售平台ssm+jsp
    一周总结(回溯:组合问题&切割问题)
    java-net-php-python-sceatch在线学习系统2019演示录像计算机毕业设计程序
    2023深耕kotlin,谈谈前景
    Python运算符
    Powershell - 环境设置
    云计算有什么作用
    [附源码]Java计算机毕业设计SSM仿咸鱼二手物品交易系统
  • 原文地址:https://blog.csdn.net/weixin_43670802/article/details/136712162