A. java学习中,怎么求交集和并集
publicstaticvoidtest3(){
Set<String>cc=newHashSet<String>();
cc.add("2");
cc.add("a");
cc.add("b");
cc.add("x");
Set<String>dd=newHashSet<String>();
dd.add("b");
dd.add("1");
dd.add("2");
dd.add("3");
dd.add("a");
Set<String>ff=newHashSet<String>();
ff.addAll(cc);
ff.addAll(dd);
System.out.println(ff.toString());
}
这是并集
B. Java中list集合的交集和差集的用法和如何将
只要一小句便可求出交集--> list1.retainAll(list2); list1和list2的位置无所谓,这样循环一下list1试试,如果还有多个list,一样的道理
C. java 并集 数组/集合 有重复元素需 保留(急)
双重循环遍历就可以了,将b中所有的数在a中遍历一遍
publicstaticvoidmain(String[]args){
String[]a={"1","ab","ab","3"};
String[]b={"ab","3","4","4"};
List<String>c=newArrayList<String>();
for(inti=0;i<a.size();++i){
c.add(a[i]);
}
for(inti=0;i<b.size();++i){
BooleanbFlag=true;
for(intj=0;j<a.size();++j){
if(b[i]==a[j]){
bFlag=false;
break;
}
}
if(bFlag){
c.add(b[i]);
}
}
}
D. 请问java有工具类取两个list的并集吗
好象List的里retainAll可以完成吧,可以保留相同的元素,将不同的删除,你可以试一下,如果这个不是创建一个新的list,是在原有的list上直接修改。
list1.retainAll(list2);
这样处理后,list1就是处理过的。
看成交集了,失败。。。
并集的话直接把两个的数据都放到一个Set集合里就行了
Set set = new HashSet();
set.addAll(list1);
set.addAll(list2);
这样set里保存的数据就是你要的结果
E. 用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){
if(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);
}
F. 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);
G. java判断2个list是否有并集
publicclassTest{
publicstaticvoidmain(String[]args){
List<Object>list1=newArrayList<Object>();
List<Object>list2=newArrayList<Object>();
List<Object>result=newArrayList<Object>();
list1.add(1);
list1.add(2);
list1.add(3);
list1.add(4);
list2.add(2);
list2.add(3);
list2.add(5);
list2.add(7);
result.addAll(list1);
result.retainAll(list2);
System.out.println(result);
}
}
H. java 怎么用removeall和addall求并集
ArrayList中,写个例子就是了,定义几个ArrayList变量、添加好相应的元素,就可以 操作了
~
~
~
~
I. java求交集和并集
处理集合交并集运算的类,实现java专门的集合类
简单实现代码如下:
package test;
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.addAll(set2);
System.out.println("并集:"+result);
}
}