java并集
‘壹’ 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);
‘贰’ java求交集和并集
虽然想尽量维持你程序的原型,但是还是改的差不多了。学java注重的是面向对象的思想,建议你不要把太多精力放在这些算法上面,不能再像学习C语言那样学习java。
public class Group{
public void jiaoji(int[] a,int[] b){
for(int i=0;i<a.length;i++){
for(int j=0;j<b.length;j++){
if(a[i]==b[j]){
System.out.print(a[i]+",");
}
}
}
}
public void bingji(int[] a,int[] b){
for(int i=0;i<a.length;i++){
System.out.print(a[i]+",");
}
for(int i=0;i<b.length;i++){
boolean flag=true;
for(int j=0;j<a.length;j++){
if(b[i]==a[j]){
flag=false;
}
}
if(flag){
System.out.print(b[i]+",");
}
}
}
public static void main(String[] args){
int a[]={1,2,3,4,5};
int b[]={4,5,6,7,8};
Group group=new Group();
System.out.print("交集为:");
group.jiaoji(a,b);
System.out.print("\n并集为:");
group.bingji(a,b);
}
}
‘叁’ java 求交集 并集 差集
import java.util.*;
public class ArrayTest {
public static void main(String[] args) {
int[] a = {1,6,4,5,2,3,};
int[] b = {2,3,4,56,7,8,99};
int[] t = ArrayTest.并集(a, b);
for(int i:t)System.out.print(i+" ");
System.out.println();
t = ArrayTest.交集(a, b);
for(int i:t)System.out.print(i+" ");
}
static int[] 并集(int[] a,int[] b){
Arrays.sort(a);
Arrays.sort(b);
int[] t = new int[a.length];
System.array(a,0,t,0,t.length);
out:
for(int i:b){
for(int j:a){
if(i==j)continue out;
}
t=putInt(t,i);
}
Arrays.sort(t);
return t;
}
static int[] 交集(int[] a,int[] b){
Arrays.sort(a);
Arrays.sort(b);
int[] t = new int[0];
for(int i:a){
for(int j:b){
if(i==j){
t=putInt(t,i);
break;
}
}
}
return t;
}
static int[] putInt(int[] a,int i){
int[] t = new int[a.length+1];
System.array(a, 0,t,0,a.length);
t[a.length]=i;
return t;
}
}
//做了交集,并集,差集自己想吧
‘肆’ java连接MYSQL 查询两个数据库中的两个表 如何求这两个表的并集
List A;
List B;
for(int i=0;i<A.size();i++)
if(!B.contains(A.get(i)))
insert(A.get(i));
‘伍’ 请问java有工具类取两个list的并集吗
好象List的里retainAll可以完成吧,可以保留相同的元素,将不同的删除,你可以试一下,如果这个不是创建一个新的list,是在原有的list上直接修改。
list1.retainAll(list2);
这样处理后,list1就是处理过的。
看成交集了,失败。。。
并集的话直接把两个的数据都放到一个Set集合里就行了
Set set = new HashSet();
set.addAll(list1);
set.addAll(list2);
这样set里保存的数据就是你要的结果
‘陆’ 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());
}
这是并集
‘柒’ 用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);
}