利用set集合快速高效求交集、并集、差集
2018-11-05 本文已影响0人
_fanqh
1、求两个集合的交集:
val list = HashSet<Int> ()
list.add(1)
list.add(2)
list.add(3)
list.add(4)
list.add(5)
Log.d("MMM", "list = " + list)
val list2 = HashSet<Int> ()
list2.add(1)
list2.add(2)
list2.add(3)
Log.d("MMM", "list2 = " + list2)
//交集
list.retainAll(list2);
Log.d("MMM", "交集 = " + list)
结果:

1、求两个集合的并集:
val list = HashSet<Int> ()
list.add(1)
list.add(2)
list.add(3)
list.add(4)
list.add(5)
Log.d("MMM", "list = " + list)
val list2 = HashSet<Int> ()
list2.add(2)
list2.add(3)
list2.add(6)
list2.add(7)
Log.d("MMM", "list2 = " + list2)
//并集
list.addAll(list2);
Log.d("MMM", "并集 = " + list)
结果:

3、求两个集合的差集:
val list = HashSet<Int> ()
list.add(1)
list.add(2)
list.add(3)
list.add(4)
list.add(5)
Log.d("MMM", "list = " + list)
val list2 = HashSet<Int> ()
list2.add(2)
list2.add(2)
list2.add(3)
list2.add(6)
Log.d("MMM", "list2 = " + list2)
//差集
list.removeAll(list2)
Log.d("MMM", "差集 = " + list)
结果:
