<分区>
Guava 有没有更优雅的方式从集合中移除满足某个谓词的项,并同时收集这些移除的项?有关示例,请参见下面的代码。
public static void main(String[] a) {
final List<String> list = new LinkedList<String>();
list.add("...");
...
final List<String> removedItems = new LinkedList<String>();
Iterables.removeIf(list, new Predicate<String>() {
public boolean apply(final String o) {
if (...) { // some condition
removedItems.add(o);
return true;
}
return false;
}
});
System.out.println(removedItems);
}
谢谢!
编辑:我的问题不是关于对列表进行分区,而是关于从集合中删除元素并同时收集它们。我编辑了我的问题以避免混淆。