一.需求

今天做的是将两个字符串转为数组后再转集合,然后利用集合的流stream来进行差集过滤

二.差集代码

差集:将两个集合相同的数据去掉,留下不同的数据

 1 @Test
2 public void wzwcs()
3 {
4 // 字符串1
5 String strOne = "123,1234";
6 // 字符串2
7 String strTow = "123,1234,12345";
8 // 已逗号分隔转为数组1
9 String[] splitOne = strOne.split(",");
10 // 已逗号分隔转为数组2
11 String[] splitTow = strTow.split(",");
12 // 将数组转为集合1
13 List<String> listOne = Arrays.asList(splitOne);
14 // 将数组转为集合2
15 List<String> listTow = Arrays.asList(splitTow);
16 // 直接写集合流将 集合2 流化,过滤(集合2的各个值->集合1.非包含(集合2的各个值)).转为set集合
17 Set <String> result = listTow.stream().filter(e->!listOne.contains(e)).collect(Collectors.toSet());
18 // 遍历差集
19 for (String s : result)
20 {
21 // 打印
22 System.out.println("result.toString() = " + s);
23 }
24 }

三.交集代码

交集:将相同的代码留下

交集代码其实就非包含变为包含

 1 @Test
2 public void wzwcs()
3 {
4 // 字符串1
5 String strOne = "123,1234";
6 // 字符串2
7 String strTow = "123,1234,12345";
8 // 已逗号分隔转为数组1
9 String[] splitOne = strOne.split(",");
10 // 已逗号分隔转为数组2
11 String[] splitTow = strTow.split(",");
12 // 将数组转为集合1
13 List<String> listOne = Arrays.asList(splitOne);
14 // 将数组转为集合2
15 List<String> listTow = Arrays.asList(splitTow);
16 // 直接写集合流将 集合2 流化,过滤(集合2的各个值->集合1.包含(集合2的各个值)).转为set集合
17 Set <String> result = listTow.stream().filter(e->listOne.contains(e)).collect(Collectors.toSet());
18 // 遍历交集
19 for (String s : result)
20 {
21 // 打印
22 System.out.println("result.toString() = " + s);
23 }
24 }

四. 规范之“用流中的Stream.Of(arr1,arr2)将两个集合合并”

最新文章

  1. [django]用户认证中只允许登陆用户访问(网页安全问题)
  2. web初学之重定向与请求转发
  3. 将kindeditor在线编辑器制作成smarty插件
  4. js实现冒泡排序
  5. HTML语言的一些元素(四)
  6. linux中sudoers别名规则
  7. Xcode5下去除Icon高光
  8. PowerShell_零基础自学课程_6_PS中获取帮助信息详解、管道、格式化输
  9. python 匿名函数与三元运算
  10. react - next.js 引用本地图片和css文件
  11. 使用日期操作类(Calendar)获得几秒、几分钟、几小时之前的时间
  12. Jmeter之Constant Timer与constant throughput timer的区别(转)
  13. POI导出Excel 错误THE MAXIMUM COLUMN WIDTH FOR AN INDIVIDUAL CELL IS 255 CHARACTERS
  14. 均方根误差(RMSE)与平均绝对误差(MAE)
  15. HTTP STATUS CODE: 521的解决办法
  16. 扩容Linux文件系统
  17. AJAX的优点 个人理解记录
  18. Win7 64位操作系统连接HP 1010打印机完美解决方案
  19. java基础29 迭代器 listIterator() 及各种遍历集合的方法
  20. ETL工具kettle基本使用

热门文章

  1. 编译原理 | 构造LR(1)自动机的注意事项
  2. 2020ICPC南京 M.Monster Hunter
  3. WIN10:删除开始菜单栏中的文件夹
  4. Python数据可视化 -- Wordcloud
  5. 安装xpath helper方便进行爬虫
  6. mysql什么时候会发生file sort
  7. tp5怎么防sql注入 xss跨站脚本攻击
  8. [动态规划] LeetCode 2055. 蜡烛之间的盘子
  9. 基于Python实现二分查找法实战
  10. 1、如何抓取Modbus TCP/UDP 数据包实战