导航:首页 > 编程语言 > java取两个list的差集

java取两个list的差集

发布时间:2023-10-29 18:17:47

A. 请问java工具类取两个list的并集吗

使用java集合(包括但不限于List)类可方便地计算两个集合的交集、并集、差集等,以下是详细代码
import java.util.HashSet;
import java.util.Set;
public class Test {
public static void main(String[] args) {
Set<Integer> result = new HashSet<Integer>();
Set<Integer> set1 = new HashSet<Integer>(){{
add(1);
add(3);
add(5);
}};
Set<Integer> set2 = new HashSet<Integer>(){{
add(1);
add(2);
add(3);
}};

result.clear();
result.addAll(set1);
result.retainAll(set2);
System.out.println("交集:"+result);

result.clear();
result.addAll(set1);
result.removeAll(set2);
System.out.println("差集:"+result);

result.clear();
result.addAll(set1);
result.addAll(set2);
System.out.println("并集:"+result);
}
}
针对题目中关于List的应用,只需要在代码中将输入集合改为list即可

B. java集合求差值和并集!

差集
ArrayList<String> stuList = new ArrayList<String>();
stuList.add("aa");
stuList.add("bb");
stuList.add("cc");
stuList.add("dd");
ArrayList<String> stuList2 = new ArrayList<String>();
stuList2.add("bb");
stuList2.add("cc");
stuList2.add("ee");
stuList2.add("ff");
for (String s : stuList2) {
if (stuList.contains(s)) {
stuList.remove(s);
} else {
stuList.add(s);
}
}
System.out.println(stuList2);
合集
ArrayList stuList = new ArrayList();
stuList.add("aa");
stuList.add("bb");
stuList.add("cc");
stuList.add("dd");
ArrayList stuList2 = new ArrayList();
stuList2.add("bb");
stuList2.add("cc");
stuList2.add("ee");
stuList2.add("ff");
Set set=new HashSet();
for (Object object : stuList) {
set.add(object);
}
for (Object object : stuList2) {
set.add(object);
}
System.out.println(set);

C. 用java编写程序,求集合的并集、交集和差集

publicstaticvoidmain(String[]args){
Integer[]A={1,2,3,4};
Integer[]B={1,3,7,9,11};

List<Integer>listA=Arrays.asList(A);
List<Integer>listB=Arrays.asList(B);

List<Integer>jiaoji=newArrayList<Integer>();
for(Integera:listA){
(listB.contains(a)){
jiaoji.add(a);
}
}
System.out.println(jiaoji);
List<Integer>bingji=newArrayList<Integer>();
for(Integera:listA){
if(!bingji.contains(a)){
bingji.add(a);
}
}
for(Integerb:listB){
if(!bingji.contains(b)){
bingji.add(b);
}
}

System.out.println(bingji);

List<Integer>chaji=newArrayList<Integer>();
for(Integera:listA){
if(!listB.contains(a)){
chaji.add(a);
}
}
System.out.println(chaji);
}

D. java中怎么取两个数组中不相同的数据

public static <T> List<T> compare(T[] t1, T[] t2) {
List<T> list1 = Arrays.asList(t1);
List<T> list2 = new ArrayList<T>();
for (T t : t2) {
if (!list1.contains(t)) {
list2.add(t);
}
}
return list2;
}
compare(new Integer[] { 1, 2, 3 }, new Integer[] {
1, 2, 3, 4 })

E. java 两个list数组 其中一个数组包含另一数组所有值,怎么对比

你想要的是不是下面的操作方式:

Listlist1=newArrayList();

list1.add("1111");

list1.add("2222");

list1.add("3333");
Listlist2=newArrayList();

list2.add("3333");

list2.add("4444");

list2.add("5555");
//并集

//list1.addAll(list2);

//交集

//list1.retainAll(list2);

//差集回

//list1.removeAll(list2);

//无重复答并集

list2.removeAll(list1);

list1.addAll(list2);

F. java中如何取得两个List集合中不相等的值

packagep1;

importjava.util.Arrays;
importjava.util.List;

publicclassLab9
{
publicstaticvoidmain(String[]args)
{
List<String>list1=Arrays.asList("a","f","e","x","w");
List<String>list2=Arrays.asList("a","b","c","d");
Stringtemp1=list1.toString().replaceAll("[\[\]]",",").replaceAll("\s+","");
Stringtemp2=list2.toString().replaceAll("[\[\]]",",").replaceAll("\s+","");
Stringresult2="";
for(inti=0;i<list1.size();i++)
{
if(temp2.indexOf(","+list1.get(i)+",")==-1)
{
result2+=list1.get(i)+",";
}
}
System.out.println("存在list1而不存在list2的元素有:"+result2);
System.out.println("同理可证");
}
}

阅读全文

与java取两个list的差集相关的资料

热点内容
windows8网络连接 浏览:442
怎么快速增加qq群人数 浏览:919
锤子视频播放器文件不存在 浏览:707
苹果手机怎么清理app缓存 浏览:682
花园战争2豪华升级包 浏览:517
电脑无法向u盘传输文件 浏览:823
bpn配置文件 浏览:932
501完美越狱工具 浏览:119
中间夹菜单里面不能显示压缩文件 浏览:952
如何指导小学生参加编程比赛 浏览:275
物业的招标文件有哪些 浏览:452
保存游戏文件名非法或只读 浏览:258
js怎么做图片时钟 浏览:451
华为应用里面有了app说明什么 浏览:801
数据库中xy是什么意思 浏览:893
u盘打不开提示找不到应用程序 浏览:609
网站功能介绍怎么写 浏览:954
word在试图打开文件时错误 浏览:108
主板无vga插槽怎么连接编程器 浏览:521
录视频文件在哪里删除 浏览:881

友情链接