collection操作两个集合取交集 函数方法 retainAll和removeAll

A.xxx(B)
总结两者刚好相反,retainAll是用来删除A不在指定集合B的元素,而removeAll是用来删除在指定集合中的元素。
所以使用上retainAll可以用来取交集,而removeAll可以用来排除值。
(1)retainAll

boolean retainAll(Collection<?> c)仅在列表中保留指定 collection 中所包含的元素(可选操作)。
换句话说,该方法从列表中移除未包含在指定 collection 中的所有元素。 
指定者:
接口 Collection<E> 中的 retainAll
参数:
c - 包含将保留在此列表中的元素的 collection 
返回:
如果此列表由于调用而发生更改,则返回 true 
抛出: 
UnsupportedOperationException - 如果列表不支持 retainAll 操作 
ClassCastException - 如果此列表的元素的类和指定的 collection 不兼容(可选) 
NullPointerException - 如果此列表包含一个 null 元素,并且指定的 collection 不允许 null 元素(可选),
或者指定的 collection 为 null
另请参见:
remove(Object), contains(Object)

(2)removeAll

boolean removeAll(Collection<?> c)从列表中移除指定 collection 中包含的其所有元素(可选操作)。 
指定者:
接口 Collection<E> 中的 removeAll
参数:
c - 包含从此列表中移除的元素的 collection 
返回:
如果此列表由于调用而发生更改,则返回 true 
抛出: 
UnsupportedOperationException - 如果列表不支持 removeAll 操作 
ClassCastException - 如果此列表中的元素的类和指定的 collection 不兼容(可选) 
NullPointerException - 如果此列表包含一个 null 元素,并且指定的 collection 不允许 null 元素(可选),
或者指定的 collection 为 null
另请参见:
remove(Object), contains(Object)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值