当前位置: 首页 > news >正文

两个list中实体某个属性值相同的实体和不同的实体

说明

有两个list,分别是newList 和 oldList,快速取出两个 newList 中某个属性值相同的实体和不同的实体

代码

import lombok.Data;
import lombok.ToString;import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;public class Main {/**** @param args*/public static void main(String[] args) {List<Segment> newList =  new ArrayList<Segment>();Segment newO1 = new Segment();newO1.setCouponNum("1");newO1.setArrAirportCode("北京");newO1.setDepAirportCode("山西");newList.add(newO1);Segment newO12 = new Segment();newO12.setCouponNum("2");newO12.setArrAirportCode("北京2");newO12.setDepAirportCode("山西2");newList.add(newO12);Segment newO13 = new Segment();newO13.setCouponNum("3");newO13.setArrAirportCode("北京2");newO13.setDepAirportCode("山西2");newList.add(newO13);List<Segment> oldList =  new ArrayList<Segment>();Segment oldO1 = new Segment();oldO1.setCouponNum("1");oldO1.setArrAirportCode("北京");oldO1.setDepAirportCode("山西");oldList.add(newO1);Segment oldO12 = new Segment();oldO12.setCouponNum("2");oldO12.setArrAirportCode("北京2");oldO12.setDepAirportCode("山西2");oldList.add(oldO12);Segment oldO13 = new Segment();oldO13.setCouponNum("4");oldO13.setArrAirportCode("北京2");oldO13.setDepAirportCode("山西2");oldList.add(oldO13);//过滤出需要插入的数据,这里就是过滤多个不相同字段List<Segment> collectOne = newList.stream().filter(newSeg -> {for (Segment oldSeg : oldList) {if (newSeg.getCouponNum().equals(oldSeg.getCouponNum())) {return false;}}return true;}).collect(Collectors.toList());//collect中就是需要插入的数据System.out.println("newList中 couponNum 不相同的数据 = " + collectOne);//过滤出需要插入的数据,这里就是过滤多个不相同字段List<Segment> collectTwo = newList.stream().filter(newSeg -> {for (Segment oldSeg : oldList) {if (Objects.equals(newSeg.getCouponNum(),oldSeg.getCouponNum())) {return true;}}return false;}).collect(Collectors.toList());//collect中就是需要插入的数据System.out.println("newList中 couponNum 相同的数据 = " + collectTwo);}
}@ToString
@Data
class Segment {/** Coupon号 */private String couponNum;/** 起飞机场编码 */private String depAirportCode;/** 降落机场编码 */private String arrAirportCode;
}

运行结果

newList中 couponNum 不相同的数据 = [
Segment(couponNum=3, depAirportCode=山西2, arrAirportCode=北京2)
]newList中 couponNum 相同的数据 = [
Segment(couponNum=1, depAirportCode=山西, arrAirportCode=北京), 
Segment(couponNum=2, depAirportCode=山西2, arrAirportCode=北京2)
]

相关文章:

两个list中实体某个属性值相同的实体和不同的实体

说明 有两个list,分别是newList 和 oldList&#xff0c;快速取出两个 newList 中某个属性值相同的实体和不同的实体 代码 import lombok.Data; import lombok.ToString;import java.util.ArrayList; import java.util.List; import java.util.Objects; import java.util.str…...

Linux下利用Docker快速部署Kafka

1.摘要 在本文中,介绍了利用Docker安装Kafka的基础环境要求; 利用Docker安装zookeeper过程; 利用Docker安装Kafka过程;进入容器配置生产者和消费者过程; 演示生产者和消费者通讯; 故障排查方法。 2.基础环境准备 提前准备一台安装Linux系统的主机或虚拟机,我这里安装的是Ubu…...

竞赛 深度学习图像分类算法研究与实现 - 卷积神经网络图像分类

文章目录 0 前言1 常用的分类网络介绍1.1 CNN1.2 VGG1.3 GoogleNet 2 图像分类部分代码实现2.1 环境依赖2.2 需要导入的包2.3 参数设置(路径&#xff0c;图像尺寸&#xff0c;数据集分割比例)2.4 从preprocessedFolder读取图片并返回numpy格式(便于在神经网络中训练)2.5 数据预…...

jvm摘要

第 2 章 Java 内存区域与内存溢出异常 2.2 运行时数据区域 程序计数器-线程私有:是一块较小的内存空间&#xff0c;它可以看作是当前线程所执行的字节码的行号指示器。 程序计数器是唯一一个没有规定任何OutOfMemoryError 情况的区域。 Java 虚拟机栈-线程私有:用于执行Java …...

GZ035 5G组网与运维赛题第1套

2023年全国职业院校技能大赛 GZ035 5G组网与运维赛项(高职组) 赛题第1套 赛须知 1.竞赛内容分布 竞赛模块1--5G公共网络规划部署与开通(35分) 子任务1:5G公共网络部署与调试(15分) 子任务2:5G室内与室外站点建设(20分) 竞赛模块2--5G公共网络运维与优化(3…...

MySQL数据xtrabackup物理备份方法

目录 一、物理备份的方式二、xtrabackup物理备份1.安装xtrabackup2.完整备份/恢复流程3.增量备份流程4.差异备份流程5.物理备份总结 一、物理备份的方式 1.完整备份 每次对数据进行完整的备份&#xff0c;即对整个数据库的备份、数据库结构和文件结构的备份&#xff0c;保存的…...

vue3 使用 elementUi: ./lib/theme-chalk/index.css is not exported from package

目录 1. 在 vue3 中使用 element-ui2. 如果启动报错&#xff1a;Module not found: Error: Package path ./lib/theme-chalk/index.css is not exported from package 1. 在 vue3 中使用 element-ui 在 vue3 中使用 element-ui&#xff0c;我们的流程一般是这样的&#xff1a;…...

[ROS系列]ORB_SLAM3错误版本(仅记录)

背景&#xff1a; 1、设备&#xff1a;pc&#xff1b;旭日派x3&#xff08;后续会加上&#xff0c;目前只有pc&#xff09; 2、环境&#xff1a;Ubuntu20.04&#xff1b;ROS2&#xff08;Foxy&#xff09;​​​​​​​ ros2机器人foxy版用笔记本摄像头跑单目orb_slam3-CSD…...

APP盾的防御机制及应用场景

移动应用&#xff08;APP&#xff09;在我们日常生活中扮演着越来越重要的角色&#xff0c;但随之而来的是各种网络安全威胁的增加。为了保障APP的安全性&#xff0c;APP盾作为一种专门设计用于防御移动应用威胁的工具得以广泛应用。本文将深入探讨APP盾的防御机制以及在不同应…...

Unity性能优化一本通

文章目录 关于Unity性能优化一、资源部分&#xff1a;1、图片1.1、 图片尺寸越小越好1.2、使用2N次幂大小1.3、取消勾选Read/Write Enabled1.4、图片压缩1.5、禁用多余的Mip Map1.6、合并图集 2、模型2.1.限制模型面数2.2.限制贴图的大小2.3.禁用Read/Write Enables2.4.不勾选其…...

Mysql,SqlServer,Oracle获取库名 表名 列名

先看下需求背景&#xff1a; 获取某个数据源连接下所有库名&#xff0c;库下所有表名&#xff0c;表中所有字段 1.MySql 先说MySql吧&#xff0c;最简单 1.1获得所有数据库库名 这是一个mysql和sqlserver公用的方法&#xff0c;这里url不用担心数据库问题&#xff0c;他其实…...

errno变量和显示错误信息

一、errno Linux很多函数发生错误&#xff0c;只会返回-1。因此&#xff0c;我们只知道函数发生了错误&#xff0c;却不知道具体发生了什么错误。 因此Linux 系统下对常见的错误做了一个编号&#xff0c;每一个编号都代表着每一种不同的错误类型。 发生错误时&#xff0c;对…...

Centos 7 安装 Docker Enginee

文章目录 Centos 安装 Docker Enginee系统要求卸载旧版本使用 RPM 仓库设置 Docker 仓库安装 Docker Enginee升级 Docker Enginee 卸载 Docker Centos 安装 Docker Enginee 要在 Centos 安装 Docker Enginee&#xff0c;需要满足以下要求&#xff1a; 系统要求 CentOS 7Cent…...

通过js来实现用身份证号来判断性别和出生年月

html: <input type"text" id"shenfenzhenghao" oninput"hao()" placeholder"证件号"><input type"text" id"xingbie" disabled"disabled" placeholder"性别"><input type&qu…...

华为数通方向HCIP-DataCom H12-831题库(多选题:61-80)

第61题 在MPLS VPN中,为了区分使用相同地址空间的IPV4前缀,将IPV4的地址增加了RD值,下列选项描述正确的是: A、在PE设备上,每一个VPN实例都对应一个RD值,同一PE设备上,必须保证RD值唯一 B、RD可用于来控制VPN路由信息的发布 C、RD在传递过程中作为BGP的扩展团体性封装在…...

【T】03

A 【模板】快速幂 板子&#xff0c;略 #include<bits/stdc.h> #define ll long long using namespace std; ll a,p,k; int main() {scanf("%lld%lld%lld",&a,&p,&k);printf("%lld^%lld mod %lld",a,p,k);ll ans1,wa;a%k;while(p){if(p…...

VBA技术资料MF73:将Logo添加到页眉侧

我给VBA的定义&#xff1a;VBA是个人小型自动化处理的有效工具。利用好了&#xff0c;可以大大提高自己的工作效率&#xff0c;而且可以提高数据的准确度。我的教程一共九套&#xff0c;分为初级、中级、高级三大部分。是对VBA的系统讲解&#xff0c;从简单的入门&#xff0c;到…...

听GPT 讲Rust源代码--library/std(1)

std git:(master) ✗ tree.├── Cargo.toml├── benches│ ├── hash│ │ ├── map.rs│ │ ├── mod.rs│ │ └── set_ops.rs│ └── lib.rs├── build.rs├── src│ ├── alloc.rs│ ├── ascii.rs│ ├── backtrace│ │…...

Vue源码总结

1&#xff0c;根据vue工程package.json配置文件查看scripts命令&#xff0c;找到build命令执行的js文件 2&#xff0c;根据构建执行的js文件继续跟进&#xff0c;找到主入口文件 3&#xff0c;从主入口文件直接分析主干代码&#xff0c;追踪export的Vue对象 4&#xff0c;跟…...

记一次调试微信订阅消息的坑

微信发送订阅消息文档 发送订阅消息 | 微信开放文档 按照文档说明的&#xff0c;一直报data param错误&#xff0c;编码47001&#xff0c;从程序中把请求参数扣出来&#xff0c;放到微信提供的工具里面调试 微信调试工具 然后报data参数要用string&#xff0c;转化为string…...

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…...

《Qt C++ 与 OpenCV:解锁视频播放程序设计的奥秘》

引言:探索视频播放程序设计之旅 在当今数字化时代,多媒体应用已渗透到我们生活的方方面面,从日常的视频娱乐到专业的视频监控、视频会议系统,视频播放程序作为多媒体应用的核心组成部分,扮演着至关重要的角色。无论是在个人电脑、移动设备还是智能电视等平台上,用户都期望…...

使用分级同态加密防御梯度泄漏

抽象 联邦学习 &#xff08;FL&#xff09; 支持跨分布式客户端进行协作模型训练&#xff0c;而无需共享原始数据&#xff0c;这使其成为在互联和自动驾驶汽车 &#xff08;CAV&#xff09; 等领域保护隐私的机器学习的一种很有前途的方法。然而&#xff0c;最近的研究表明&…...

DAY 47

三、通道注意力 3.1 通道注意力的定义 # 新增&#xff1a;通道注意力模块&#xff08;SE模块&#xff09; class ChannelAttention(nn.Module):"""通道注意力模块(Squeeze-and-Excitation)"""def __init__(self, in_channels, reduction_rat…...

在四层代理中还原真实客户端ngx_stream_realip_module

一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡&#xff08;如 HAProxy、AWS NLB、阿里 SLB&#xff09;发起上游连接时&#xff0c;将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后&#xff0c;ngx_stream_realip_module 从中提取原始信息…...

Python爬虫(二):爬虫完整流程

爬虫完整流程详解&#xff08;7大核心步骤实战技巧&#xff09; 一、爬虫完整工作流程 以下是爬虫开发的完整流程&#xff0c;我将结合具体技术点和实战经验展开说明&#xff1a; 1. 目标分析与前期准备 网站技术分析&#xff1a; 使用浏览器开发者工具&#xff08;F12&…...

uniapp中使用aixos 报错

问题&#xff1a; 在uniapp中使用aixos&#xff0c;运行后报如下错误&#xff1a; AxiosError: There is no suitable adapter to dispatch the request since : - adapter xhr is not supported by the environment - adapter http is not available in the build 解决方案&…...

安全突围:重塑内生安全体系:齐向东在2025年BCS大会的演讲

文章目录 前言第一部分&#xff1a;体系力量是突围之钥第一重困境是体系思想落地不畅。第二重困境是大小体系融合瓶颈。第三重困境是“小体系”运营梗阻。 第二部分&#xff1a;体系矛盾是突围之障一是数据孤岛的障碍。二是投入不足的障碍。三是新旧兼容难的障碍。 第三部分&am…...

通过 Ansible 在 Windows 2022 上安装 IIS Web 服务器

拓扑结构 这是一个用于通过 Ansible 部署 IIS Web 服务器的实验室拓扑。 前提条件&#xff1a; 在被管理的节点上安装WinRm 准备一张自签名的证书 开放防火墙入站tcp 5985 5986端口 准备自签名证书 PS C:\Users\azureuser> $cert New-SelfSignedCertificate -DnsName &…...

libfmt: 现代C++的格式化工具库介绍与酷炫功能

libfmt: 现代C的格式化工具库介绍与酷炫功能 libfmt 是一个开源的C格式化库&#xff0c;提供了高效、安全的文本格式化功能&#xff0c;是C20中引入的std::format的基础实现。它比传统的printf和iostream更安全、更灵活、性能更好。 基本介绍 主要特点 类型安全&#xff1a…...