‘壹’ 有集合A={1,2,3,4},和B={1,2,5,6},用java语言编写一个应用程序输出A和B的交集,并集和差集
//交集
String []a={"1"灶宴,"2","3","4","乎橡7","8"};
String []b={"1","2","5","6","9","8"};
for(int i=0;i<隐顷银a.length;i++){
for(int j=i;j<b.length;j++){
if(a[i]==b[j]){
System.out.print(b[j]);
}
}
}
}
‘贰’ 用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);
}
‘叁’ 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求两个数组交集中元素的个数
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 怎么设计一个set类 然后new两个set对象 进行交集 并集 求代码
import java.util.Iterator;
import java.util.Set;
import java.util.TreeSet;
public class MySet {
public static void main(String[] args) {
Set set1 = new TreeSet();
set1.add("aa");
set1.add("bb");
set1.add("CC");
Set set2 = new TreeSet();
set2.add("aa");
set2.add("eeff");
Set unionSet = MySet.union(set1, set2);
Set intersectionSet = MySet.intersection(set1, set2);
printSet(unionSet);
System.out.println("-----------------------------");
printSet(intersectionSet);
}
private static void printSet(Set set) {
Iterator ite = set.iterator();
while(ite.hasNext()){
System.out.println(ite.next().toString());
}
}
public static Set union(Set set1, Set set2){
Set set = new TreeSet();
set.addAll(set1);
set.addAll(set2);
return set;
}
public static Set intersection(Set set1, Set set2){
Set set = new TreeSet();
if(set1.size() > set2.size()){
set.addAll(set2);
}else{
set.addAll(set1);
}
Iterator ite = set.iterator();
while(ite.hasNext()){
Object obj = ite.next();
if(!(set1.contains(obj) && set2.contains(obj))){
set.remove(obj);
}
}
return set;
}
}
--------------------------
CC
aa
bb
eeff
-----------------------------
aa
‘柒’ java中关于取两个集合交集的retainAll方法 1、是否两个集合要完全相同 2、retainAll方法的原理是什么
如果我估计没错的话,2个集合取交集,也是就取铅激其中对迅激铅象是亩好否相等,应该重写了hashcode和equel方法
‘捌’ 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问题,写一个程序,其功能是输入两组整数,求这两组数的交集和并集。跟我说思路,不是说算法,就
并集比较好办:把敬穗两组整数全部存到一个Set对象内就完了;
交集:就对一个数差友组中的每个元素循环,判断其是否在另一个数组亮庆卜中。
‘拾’ java编程定义两个一维整型数组A和B,其中A中存储了随机生成的
List<Integer>list1=newArrayList<Integer>();
List<Integer>list2=newArrayList<Integer>();
for(inti=0;i<2000;i++){
list1.add((int)(Math.random()*1000));
}
for(inti薯亩带=0;i耐哗<1000;i++){
list2.add((int)(Math.random()*1000));
}
list1.retainAll(list2);//获数芦得交集
Set<Integer>set=newLinkedHashSet<Integer>();//去重
set.addAll(list1);
list1.clear();
list1.addAll(set);//去重结束