您将如何在列表上执行 removeIf 或为 eclipse 集合中的基元设置?
How would you do a removeIf on a list or set for primitives in eclipse collections?
在常规 java 集合中,可以删除给定输入 Predicate
的元素。
persons.removeIf(person -> person.isMale());
在 eclipse 集合中,只要所使用的集合扩展 Iterable<T>
.
似乎就可以执行此操作
对于扩展 PrimitiveIterable
的原始集合,似乎没有提供执行相同操作的方法。不支持吗?如果不是,为什么?
编辑:
我应该补充一点,我正在寻找一种方法,可以在不创建新集合的情况下就地删除一个项目,就像 reject 那样。
目前 Eclipse 集合中的可变原始集合不存在方法 removeIf
。添加是有意义的,因为它至少从 2012 年 8 月发布的 version 2.0 开始就一直在可变对象集合中。我刚刚开始研究它。它可以作为默认方法添加,因此有望在 9.1 版本中提供。
更新:方法removeIf
was added to mutable primitive collections in the 9.1 release of Eclipse Collections.
在常规 java 集合中,可以删除给定输入 Predicate
的元素。
persons.removeIf(person -> person.isMale());
在 eclipse 集合中,只要所使用的集合扩展 Iterable<T>
.
对于扩展 PrimitiveIterable
的原始集合,似乎没有提供执行相同操作的方法。不支持吗?如果不是,为什么?
编辑: 我应该补充一点,我正在寻找一种方法,可以在不创建新集合的情况下就地删除一个项目,就像 reject 那样。
目前 Eclipse 集合中的可变原始集合不存在方法 removeIf
。添加是有意义的,因为它至少从 2012 年 8 月发布的 version 2.0 开始就一直在可变对象集合中。我刚刚开始研究它。它可以作为默认方法添加,因此有望在 9.1 版本中提供。
更新:方法removeIf
was added to mutable primitive collections in the 9.1 release of Eclipse Collections.