`
朱秋旭
  • 浏览: 231958 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

ArrayList中的retainAll和removeAll(JDK1.7)

    博客分类:
  • JDK
阅读更多

 

在进行集合操作的时候ArrayList类中有两个非常方便的方法:

 

 

 

 

正如你所见,两个方法同时调用了一个batchRemove方法,

 

 

由于两个操作在进行contains判断时正好是逻辑上相反的关系,所以jdk1.7中对于removeAll 和 retainAll两个操作的共同点进行了抽象,使用一个boolean型参数巧妙的将两个方法合二为一。

 

注: contains方法进行判断的时候是会调用equals方法的,所以如果集合中为Object,那么一定要小心处理hashCode和equals了。

分享到:
评论

相关推荐

    Java集合框架的知识总结.doc

    例如,`add()`方法用于向集合中添加元素,`remove()`用于删除元素,`size()`返回集合大小,`contains()`检查元素是否存在,`containsAll()`、`removeAll()`和`retainAll()`则涉及集合间的操作。 6. **并发控制** ...

    jdk源码阅读Collection详解

    11.removeAll(Collection<?> c):移除与指定集合c相同的元素(即移除两集合交集部分)。 12.retainAll(Collection<?> c):保留与指定集合c中相同的元素(即移除与指定集合不同的元素)。 13.clear():清空集合。 ...

    java集合与泛型.pdf

    此外,它还定义了批量操作的方法,例如containsAll()、addAll()、removeAll()、retainAll()和clear()。这些方法允许用户对集合进行一系列操作,而不需要关心具体使用的是哪种集合类型。 Java集合框架中定义了几种...

    Java容器框架 collection集合

    - `boolean removeAll(Collection<?> c)`: 移除集合中与指定集合共有的所有元素(即求集合的差集)。 - `boolean retainAll(Collection<?> c)`: 仅保留集合中与指定集合共有的元素(即求集合的交集)。 - **转换...

    Java集合框架

    10. `removeAll(Collection c)`:移除集合中所有来自指定集合的元素。 11. `removeIf(Predicate filter)`:根据给定的谓词条件移除元素(Java 8及以上版本)。 12. `retainAll(Collection c)`:仅保留存在于指定集合...

Global site tag (gtag.js) - Google Analytics