2 个 List 集合数据求并、补集操作

阅读: 评论:0

2 个 List 集合数据求并、补集操作

2 个 List 集合数据求并、补集操作

开发过程中,我们可能需要对 2 个 或多个 List 集合中的数据进行处理,比如多个 List 集合数据求 相同元素,多个 List 集合数据得到只属于本身的数据,如图示:

这里以 2 个 List 介绍,有一些业务要求我们处理得到图上的 3 中情况
* 只属于 A
* 共同的元素
* 只属于 B

这种处理方式在数学上并不陌生,只属于 A ,相当于集合上 B 关于 A 的相对补集;相同的元素,A 和 B 的并集;只属于 B ,相当于集合上 A 关于 B 的相对补集。明白了这几个概念,下面我们就介绍 Java 代码该如何为实现,代码如下

  public static void test() {List<Integer> A = new ArrayList<Integer>();A.add(1);A.add(2);A.add(3);A.add(4);List<Integer> B = new ArrayList<Integer>();B.add(2);B.add(4);B.add(5);B.add(6);Collection C = new ArrayList<Integer>(A);C.retainAll(B);System.out.println("A 与 B 并集:" + C);B.removeAll(C);System.out.println("A 关于 B 的相对补集:" + B);A.removeAll(C);System.out.println("B 关于 A 的相对补集:" + A);}

运行该函数,得到结果如下:

  • 实际应用场景,我们开发中一般什么场合会用到这种处理呢,其实求并、补集实际开发过程中遇到机会还不少,比如,我们在页面对一个 List 数据进行了增删改操作,List 传输到后台之后,需要我们对修改之后的数据保存到数据库中,页面传输来的 数据 肯定和 数据库原先保存的数据不同, 我们要保证保存到数据库中的数据无误,就需要拿 页面传输的数据和数据库中数据进行比较,从而执行相应的增删改操作。

本文发布于:2024-02-08 19:51:34,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170739322368505.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:操作   数据   List
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23