java 实现多个list 合并成一个去掉重复的案例,我就,说了,不多,给大家,代码

java 实现多个list 合并成一个去掉重复的案例

易采站长站,站长之家为您整理了java 实现多个list 合并成一个去掉重复的案例的相关内容。

我就废话不多说了,大家还是直接看代码吧~

public static void main(String[] args){

List list1 = new ArrayList();

list1.add(1);

list1.add(2);

list1.add(3);

list1.add(4);

List list2 = new ArrayList();

list2.add(1);

list2.add(4);

list2.add(7);

list2.add(10);

List listAll = new ArrayList();

listAll.addAll(list1);

listAll.addAll(list2);

listAll = new ArrayList(new LinkedHashSet<>(listAll));

System.out.println(listAll);

}

输出:

[1, 2, 3, 4, 7, 10]

代码要典:

1、合并 使用java.util.List.addAll(Collection extends Integer>)

2、去重,借助LinkedHashSet

补充知识:java8 lambda小试牛刀,利用Stream把list转map,并将两个list的数据对象合并起来

我就废话不多说了,大家还是直接看代码吧~

public static void main(String[] args) {

// 集合1

List lists = new ArrayList<>();

SkillUpgrade s = new SkillUpgrade();

s.setLv(1);

s.setAppearNum(100);

lists.add(s);

SkillUpgrade s2 = new SkillUpgrade();

s2.setLv(2);

s2.setAppearNum(200);

lists.add(s2);

// 集合1

List listx = new ArrayList<>();

SkillUpgrade x = new SkillUpgrade();

x.setLv(1);

x.setSelectNum(1100);

listx.add(x);

SkillUpgrade x2 = new SkillUpgrade();

x2.setLv(2);

x2.setSelectNum(1200);

listx.add(x2);

// 把list转map,{k=lv,vaule=并为自身} . SkillUpgrade->SkillUpgrade或Function.identity()

Map map = listx.stream()

.collect(Collectors.toMap(SkillUpgrade::getLv, SkillUpgrade -> SkillUpgrade));

System.out.println("map:="+map);

// 合并

lists.forEach(n -> {

// 如果等级一致

if (map.containsKey(n.getLv())) {

SkillUpgrade obj = map.get(n.getLv());

// 把数量复制过去

n.setSelectNum(obj.getSelectNum());

}

});

System.out.println("lists:="+lists);

// 重复问题

Map keyRedo = listx.stream()

.collect(Collectors.toMap(SkillUpgrade::getLv, Function.identity(), (key1, key2) -> key2));

// 方式二:指定实例的map

Map linkedHashMap = listx.stream().collect(Collectors.toMap(SkillUpgrade::getLv,

SkillUpgrade -> SkillUpgrade, (key1, key2) -> key2, LinkedHashMap::new));

}

/**

* output:map:={1=SkillUpgrade [skillId=null, skillName=null, lv=1, persNum=null, selectNum=1100, appearNum=null], 2=SkillUpgrade [skillId=null, skillName=null, lv=2, persNum=null, selectNum=1200, appearNum=null]}

* lists:=[SkillUpgrade [skillId=null, skillName=null, lv=1, persNum=null, selectNum=1100, appearNum=100], SkillUpgrade [skillId=null, skillName=null, lv=2, persNum=null, selectNum=1200, appearNum=200]]

*/

输出结果:

map:={1=SkillUpgrade [skillId=null, skillName=null, lv=1, persNum=null, selectNum=1100, appearNum=null], 2=SkillUpgrade [skillId=null, skillName=null, lv=2, persNum=null, selectNum=1200, appearNum=null]}

lists:=[SkillUpgrade [skillId=null, skillName=null, lv=1, persNum=null, selectNum=1100, appearNum=100], SkillUpgrade [skillId=null, skillName=null, lv=2, persNum=null, selectNum=1200, appearNum=200]]

以上这篇java 实现多个list 合并成一个去掉重复的案例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持易采站长站。以上就是关于对java 实现多个list 合并成一个去掉重复的案例的详细介绍。欢迎大家对java 实现多个list 合并成一个去掉重复的案例内容提出宝贵意见

java list 合并去重复_java 实现多个list 合并成一个去掉重复的案例相关推荐

  1. java list 合并去重_java 怎么把多个list 合并成一个去掉重复的

    展开全部 示例代码636f707962616964757a686964616f31333361313838: public static void main(String[] args){ List  ...

  2. java list 不重复_java中如何使list集合中元素不重复

    对list集合中的重复值进行处理,大部分是采用两种方法,一种是用遍历list集合判断后赋给另一个list集合,一种是用赋给set集合再返回给list集合.不同方法在不同情况下有各自的优势. 相关免费视 ...

  3. java list map 去重复_Java中List集合去除重复数据的六种方法

    1. 循环list中的所有元素然后删除重复 public static List removeDuplicate(List list) { for ( int i = 0 ; i < list. ...

  4. java 两个stream合并_Java Stream 流如何进行合并操作

    1. 前言 Java Stream Api 提供了很多有用的 Api 让我们很方便将集合或者多个同类型的元素转换为流进行操作.今天我们来看看如何合并 Stream 流. 2. Stream 流的合并 ...

  5. java list map 去重复_如何过滤ListMapString,Object 中的重复Map

    最近遇到一个问题,就是如何过滤一个List> 中重复的Map,废话不多说,直接上代码.//去除重复的Map //cfArraylist 表示重复的 List> //listMap 表示去重 ...

  6. java数组重复_JAVA数组去除重复数据

    一.用List集合实现 int[] str = {5, 6, 6, 6, 8, 8, 7,4}; List list = new ArrayList();for (int i=0; i list.ad ...

  7. java 合并算法思想_Java实现合并两个有序序列算法示例

    本文实例讲述了Java实现合并两个有序序列算法.分享给大家供大家参考,具体如下: 问题描述 输入:序列A,其中a0,其中b0 算法思想 创建一个长度为r的数组R,将A中的序列看作是两个有序序列 B=A ...

  8. java数组随机数不重复_java产生不重复随机数

    java产生不重复随机数[史上最直接] ①本程序分"包含0"和"不包含0"两种情形,可自由选择. ②当"数组长度"大于"不重复随机 ...

  9. java合并txt文件_Java程序将两个txt文件合并为第三个txt文件 - Break易站

    让给定的两个文件是file1.txt和file2.txt.我们的任务是将两个文件合并到第三个文件,例如file3.txt,但合并应该逐行进行.以下是交替合并的步骤. 为file3.txt创建Print ...

最新文章

  1. python下载的文件放在哪里的-python实现下载文件的三种方法
  2. java 遍历hashmap key_Java5种遍历HashMap数据的写法
  3. 计组之中央处理器:2、指令周期数据流(指令周期、机器周期、时钟周期、取指周期、间址周期、执行周期、中断周期、单指令周期、多指令周期、流水线方案)
  4. ExtJS中listener方法和handler方法的区别
  5. Django ORM中原生JSONField的使用方法
  6. linux下启动nfs服务,linux下Samba服务和NFS服务配置的方法
  7. docker搭建nginx
  8. mysql存储引擎 sql_MySQL——存储引擎与SQL数据类型
  9. 如何在Ubuntu上安装MariaDB
  10. 使用VisualSVN Server搭建SVN版本控制服务器
  11. 存储器的分类整理(SRAM/DRAM/NOR FLASH/Nand FLASH)
  12. 计算机并口优点,并口的主要特点 - USB接口、串口、并口有何区别
  13. Android java.lang.NoSuchMethodError: No virtual method ;or its super classes (declaration of
  14. APT仓库目录和repository目录结构
  15. 我的第一个html网页(完整代码)
  16. 软考 软件设计师 第五版+历年真题
  17. 数据库显示连接服务器错误怎么解决方法,怎样解决数据库连接出错问题
  18. php微信小程序如何无限点赞,小程序点赞收藏功能
  19. 任发科:DevOps的前世来生,从《目标》、《凤凰项目》到《持续交付》
  20. 131页8万字数字化矿山整体解决方案

热门文章

  1. 学会这两招,快速突出图表重点,让老板眼前一亮
  2. 历史重现,德国海关突袭IFA大展
  3. 第三节:快速编译TypeScript,提高开发效率
  4. python找图里的环_python判断无向图环是否存在的示例
  5. 腐蚀和膨胀(erode and dilate)
  6. maftools|TCGA肿瘤突变数据的汇总,分析和可视化
  7. R统计和作图文章汇总
  8. Airflow使用入门指南
  9. ubuntu下gvim启动出现gtk warning Invalid input string
  10. macos 下 vmware fusion 安装 vmware tools教程