java集合运算:求交集,并集,集合差

今天突然想用Java实现如何用集合实现交集,并集和差集的运算了!主要是看Python语言的时候想起来的。

实现主要使用的Set集合,Set集合的特点是集合内的元素不可重复。

具体代码如何:

 1 package com.chengxuyuanzhilu;
 2 
 3 import java.util.HashSet;
 4 import java.util.Set;
 5 
 6 public class CollectionOperation {
 7     public static void main(String[] args) {
 8         Set<Integer> result = new HashSet<Integer>();
 9         Set<Integer> set1 = new HashSet<Integer>() {
10             private static final long serialVersionUID = 1L;
11             {
12                 add(1);
13                 add(3);
14                 add(5);
15             }};
16         
17         Set<Integer> set2 = new HashSet<Integer>(){
18             private static final long serialVersionUID = 1L;
19             {
20                 add(1);
21                 add(2);
22                 add(3);
23             }};
24         
25         //交集
26         result.clear();
27         result.addAll(set1);
28         result.retainAll(set2);
29         System.out.println("交集:"+result);
30         
31         //差集
32         result.clear();
33         result.addAll(set1);
34         result.removeAll(set2);
35         System.out.println("差集:"+result);
36         
37         //并集
38         result.clear();
39         result.addAll(set1);
40         result.addAll(set2);
41         System.out.println("并集:"+result);
42 
43     }
44 }

运行结果如下:

 

posted @ 2015-11-06 13:07  RedAnts  阅读(20884)  评论(0编辑  收藏  举报