62,623
社区成员
发帖
与我相关
我的任务
分享import java.util.*;
public class Sets {
/**交集*/
public static Set<String> intersection(Set<String> setA, Set<String> setB) {
Set<String> setIntersection = new HashSet<String>();
String s = "";
Iterator<String> iterA = setA.iterator();
while (iterA.hasNext()) {
s = iterA.next();
if(setB.contains(s)) {
setIntersection.add(s);
}
}
return setIntersection;
}
/**差集*/
public static Set<String> difference(Set<String> setA, Set<String> setB) {
Set<String> setDifference = new HashSet<String>();
String s = "";
Iterator<String> iterA = setA.iterator();
while (iterA.hasNext()) {
s = iterA.next();
if(!setB.contains(s)) {
setDifference.add(s);
}
}
return setDifference;
}
public static void main(String[] args) {
String[] strA = {"green", "blue", "red", "pink", "yellow"},
strB = {"red", "green"};
Set<String> setA = new HashSet<String>(),
setB = new HashSet<String>(),
setC = null;
/**将数组元素加到集合*/
for (int i = 0; i < strA.length; i++) {
setA.add(strA[i]);
}
for (int i = 0; i < strB.length; i++) {
setB.add(strB[i]);
}
/**求交集结果*/
setC = intersection(setA, setB);
System.out.println("交集: " + setC);
/**求差集结果*/
setC = difference(setA, setB);
System.out.println("差集: " + setC);
}
}
import java.util.Arrays;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
public class TestArrUnite
{
private Integer[] arr1 ={1,2,3};
private Integer[] arr2 ={2,3,4};
public static void main(String[] args)
{
TestArrUnite test = new TestArrUnite();
Integer UniteArr [] = test.uniteArr();
Arrays.sort(UniteArr);
for(int i:UniteArr){
System.out.print(i+ " ");
}
System.out.println();
Integer ChaArr [] = test.chaArr();
Arrays.sort(ChaArr);
for(int i:ChaArr){
System.out.print(i+ " ");
}
}
public Integer[] uniteArr(){
List arrL1= Arrays.asList(arr1);
List arrL2= Arrays.asList(arr2);
Set hst = new HashSet(arrL1);
hst.addAll(arrL2);
return (Integer [])hst.toArray(new Integer [0]);
}
public Integer[] chaArr(){
List arrL1= Arrays.asList(arr1);
Set hst = new HashSet(arrL1);
for(Integer i:arr2){
if(!hst.add(i)){
hst.remove(i);
}
}
return (Integer []) hst.toArray(new Integer[0]);
}
}