黑马程序员技术交流社区
标题:
编程题
[打印本页]
作者:
yunzhongzhuhuo
时间:
2014-3-4 18:01
标题:
编程题
求两个
集合
A,B的对称差集合,即求(A-B)∪(B-A)。
作者:
上官睿鹏
时间:
2014-3-4 18:20
本帖最后由 上官睿鹏 于 2014-3-4 18:27 编辑
示例代码:
;
import java.util.*;
//HashSet<>泛型类集合的交并与差(A-B)∪(B-A)
public class Java{
public static void main(String args[]){
Integer one=new Integer(1),
two=new Integer(2),
three=new Integer(3),
four=new Integer(4),
five=new Integer(5),
six=new Integer(6);
HashSet<Integer> A=new HashSet<Integer>(),
B=new HashSet<Integer>(),
tempSet=new HashSet<Integer>();
A.add(one);
A.add(two);
A.add(three);
A.add(four);
B.add(one);
B.add(two);
B.add(five);
B.add(six);
tempSet=(HashSet<Integer>) A.clone();
A.removeAll(B); //A变成调用该方法之前的A集合与B集合的差集
B.removeAll(tempSet); //B变成调用该方法之前的B集合与tempSet集合的差集
B.addAll(A); //B就是最初的A与B的对称差
int number=B.size();
System.out.println("A和B的对称差集合有"+number+"个元素:");
Iterator<Integer> iter=B.iterator();
while(iter.hasNext()){
Integer te=iter.next();
System.out.printf("%d,",te.intValue());
}
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2