『壹』 有集合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);//去重結束