集合交集在數學上面的定義是:
A 和 B 的交集寫作 "A ∩B"。 形式上:
x 屬於 A ∩ B 當且僅當
- x 屬於 A, 且
- x 屬於 B。
在Java集合類List里面也提供了一個內置的方法,求兩個List集合的交集。
方法如下:
public boolean retainAll(Collection<?> c)
子類必須實現該方法。
下面是以子類ArrayList為例的一段代碼:
01 |
public class ListDemo { |
02 |
03 |
/** |
04 |
* @param args |
05 |
*/ |
06 |
public static void main(String[] args) { |
07 |
List<String> sList = new ArrayList<String>(); |
08 |
List<String> sList2 = new ArrayList<String>(); |
09 |
sList.add( "1" ); |
10 |
sList.add( "2" ); |
11 |
sList.add( "3" ); |
12 |
sList.add( "4" ); |
13 |
|
14 |
sList2.add( "1" ); |
15 |
sList2.add( "3" ); |
16 |
sList2.add( "5" ); |
17 |
|
18 |
sList.retainAll(sList2); |
19 |
|
20 |
for (String s : sList){ |
21 |
System.out.println(s); |
22 |
} |
23 |
} |
24 |
25 |
} |
輸出: 1
3