java list 交集 并集 差集 去重复并集
来源:互联网 发布:json.dump 格式化输出 编辑:程序博客网 时间:2024/06/05 16:36
集合
package com;import java.util.ArrayList;import java.util.Iterator;import java.util.List;public class Test { public static void main(String[] args) { List list1 =new ArrayList(); list1.add("1111"); list1.add("2222"); list1.add("3333"); List list2 =new ArrayList(); list2.add("3333"); list2.add("4444"); list2.add("5555"); //并集 //list1.addAll(list2); //交集 //list1.retainAll(list2); //差集 //list1.removeAll(list2); //无重复并集 list2.removeAll(list1); list1.addAll(list2); Iterator<String> it=list1.iterator(); while (it.hasNext()) { System.out.println(it.next()); } //System.out.println("-----------------------------------\n"); //printStr(list1); } public static void printStr(List list1){ for (int i = 0; i < list1.size(); i++) { System.out.println(list1.get(i)); } }}
数组
package com.wish.datastrustudy; import java.util.HashSet; import java.util.LinkedList; import java.util.List;import java.util.Set; public class StringArray { public static void main(String[] args) { //测试union String[] arr1 = {"abc", "df", "abc","dd","bdfe"}; String[] arr2 = {"abc", "cc", "df", "d", "abc"}; String[] result_union = union(arr1, arr2); System.out.println("求并集的结果如下:"); for (String str : result_union) { System.out.println(str); } //测试insect String[] result_insect = intersect(arr1, arr2); System.out.println("求交集的结果如下:"); for (String str : result_insect) { System.out.println(str); } //测试 substract String[] result_minus = substract(arr1, arr2); System.out.println("求差集的结果如下:"); for (String str : result_minus) { System.out.println(str); } } //并集(set唯一性) public static String[] union (String[] arr1, String[] arr2){ Set<String> hs = new HashSet<String>(); for(String str:arr1){ hs.add(str); } for(String str:arr2){ hs.add(str); } String[] result={}; return hs.toArray(result); } //交集(注意结果集中若使用LinkedList添加,则需要判断是否包含该元素,否则其中会包含重复的元素) public static String[] intersect(String[] arr1, String[] arr2){ List<String> l = new LinkedList<String>(); Set<String> common = new HashSet<String>(); for(String str:arr1){ if(!l.contains(str)){ l.add(str); } } for(String str:arr2){ if(l.contains(str)){ common.add(str); } } String[] result={}; return common.toArray(result); } //求两个数组的差集 public static String[] substract(String[] arr1, String[] arr2) { LinkedList<String> list = new LinkedList<String>(); for (String str : arr1) { if(!list.contains(str)) { list.add(str); } } for (String str : arr2) { if (list.contains(str)) { list.remove(str); } } String[] result = {}; return list.toArray(result); } }
阅读全文
0 0
- Java数字的格式化&& Java list 交集、并集、差集,去重复并集
- java list 交集 并集 差集 去重复并集
- java list 交集 并集 差集 去重复并集
- java list 交集 并集 差集 去重复并集
- Java list 交集、并集、差集,去重复并集
- java list 交集 并集 差集 去重复并集
- java list 交集 并集 差集 去重复并集
- java list 交集 并集 差集 去重复并集
- java list 交集 并集 差集 去重复并集
- java 两个list 交集 并集 差集 去重复并集
- java list 交集 并集 差集 去重复并集
- Java List的并集 交集 差集 去重复并集
- java list 交集 并集 差集 去重复并集
- 采用java8 lambda表达式 实现 java list 交集 并集 差集 去重复并集
- java list 交集 并集 差集 去重复并集
- JAVA List 并集, 交集, 差集
- Java求字符串数组交集 并集 差集 去重复并集
- java中list的遍历,交集,并集,差集,去重,contains(),indexof,.lastIndexOf
- 公有云的云主机实例在停机状态下是否收费?
- 【openpyxl】openpyxl对Excel表格的创建与写操作例程
- 大数据知识体系_探索数据_数据汇总_可视化_多维数据分析
- OkHttp:拦截器之网络请求Log
- Unhandled event loop exception No more handles 解决办法(已解决)
- java list 交集 并集 差集 去重复并集
- jQuery教程 3 选择器
- 机器学习(29)之奇异值分解SVD原理与应用详解
- mysql安装与修改root密码
- listview点击失效解决
- typedef和define具体的详细区别
- libqrencode生成二维码并保存成bmp图片
- Netty实战学习笔记(一)——Netty的概念及体系结构
- POJ 3984 迷宫问题(BFS+STL queue)