JAVA高手注意了:

来源:百度知道 编辑:UC知道 时间:2024/06/20 01:51:23
有两个集合,A集合内容为:{1、2、3、4},B集合内容为:{1、2、5、6},两个集合的对称差定义为A Δ B = (A − B) ∪(B − A),上述A、B两集合的对称差为{3、4、5、6}。编写一个程序,用散列集求两个集合A、B的对称差集合,即求(A − B) ∪(B − A) 求解:

import java.util.*;
public class Temp04{
public static void main(String[] args){
HashSet<Integer>result=new HashSet<Integer>();
importData(result,new int[]{1,2,3,4});
symmetricDifference(result,new int[]{1,2,5,6});
for(Integer data:result){
System.out.println(data);
}
}
public static void importData(HashSet<Integer>set,int[] data){
for(int value:data){
set.add(new Integer(value));
}
}
public static void symmetricDifference(HashSet<Integer>set,int[] data){
for(int value:data){
Integer objValue=new Integer(value);
if(set.contains(objValue)){
set.remove(objValue);
}
else{
set.add(objValue);
}
}
}
}

import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

public class test {

public static void main