Ⅰ 如何在java中实现两个集合的交和并
list1 list2//拿两个集合举例
List list3=new ArrayList();
for(int i=0;i<list1.size();i++)
{
for(int j=0;j<list2.size();j++)
{
if(list1.get(i)==list2.get(j)||list.get(i).equals(list2.get(j)))
list3.add(list1.get(i));
break;
}
}//循环后的list3就是交集
List list3=new ArrayList();
for(int i=0;i<list1.size();i++)
{
for(int j=0;j<list2.size();j++)
{
if(list1.get(i)==list2.get(j)||list.get(i).equals(list2.get(j)))
{list3.add(list1.get(i)); continue;}
list3.add(list1.get(i));
list3.add(list2.get(j));
}
}//这个list3就是并集
Ⅱ 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);
}
}
Ⅲ JAVA求两个数组交集中元素的个数
import java.util.Scanner;
public class JiaoJi {
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
int set1_length=in.nextInt();
int set1[]=new int[set1_length];
for(int count1=0;count1<set1_length;count1++) {
set1[count1]=in.nextInt();
}
int set2_length=in.nextInt();
int set2[]=new int[set2_length];
int number=0;
for(int count2=0;count2<如余困set2_length;count2++) {
set2[count2]=in.nextInt();
for (int count1=0; count1<set1_length;count1++) {
if(set1[count1]==set2[count2]) number++;
}
}
in.close();
if (number==0) System.out.println("渣念毁嫌None");
else System.out.println(number);
}
}
Ⅳ Java如何找到两个数组的交集
//方法有很多,说一个简单点..
importjava.util.Arrays;
importjava.util.HashSet;
publicclassRetTest{
publicstaticvoidmain(String[]args){
HashSet<Integer>hs=newHashSet<Integer>();//set集合
int[]a={1,2,3,4,5},//两个数组
b={0,3,4,5,6};
for(inti=0;i<a.length;i++){//外层
for(intj=0;j<b.length;j++){//内层
if(a[i]==b[j]){//如果一样
hs.add(a[i]);//就装集合
}
}
}
System.out.println("a:"+Arrays.toString(a));
System.out.println("b:"+Arrays.toString(b));
System.out.println("交集为:"+hs);
}
}
Ⅳ java程序,给定的两个数组求交集,我知道用两个 for循环可以得到这些数
publicclassIntersection{
publicstaticvoidmain(String[]args){
//给定两个数组
int[]as={1,5,8,9,4,6};
int[]bs={5,7,3,2};
//记录相同的元素(String类型方便下面判断)
String[]cs=newString[as.length>bs.length?as.length:bs.length];//长度不超过上麦年量数组中最大长度
//循环比较
for(inti=0;i<as.length;i++){
intflag=0;//有相同元素标记
for(intj=0;j<bs.length;j++){
if(bs[j]==as[i]){
flag=flag+1;
}
}
intplace=0;//记录cs数组已经有几个元素
for(Stringj:cs){
place=0;
if(j!=null&&j!=""){
place=place+1;
}
}
if(flag!=0){
cs[place]=as[i]+"";
}
}
//循环输出交集数组
for(Stringi:cs){
if(i!=null){
System.out.println(i);
}
}
}
}
Ⅵ 再问一下关于:java中两个数组的交集怎么求
交集不就是元素相同吗,两个for循环一个一个比较
Ⅶ JAVA怎么取多个List集合的交集
1、把多个list放到一个list中,生成 List<List<Object>>结构
2、遍历list,使用java8的规约操作,两两求交集
list.stream().rece((list1,list2) -> { list1.retainAll(list2); return list1;}).orElse(emptyList());