java – Guava:为什么没有Lists.filter()函数?

有没有理由

Lists.transform()

但不是

Lists.filter()

如何正确过滤列表?我可以用

new ArrayList(Collection2.filter())

当然,但这种方式不能保证我的顺序保持不变,如果我理解正确。

它没有实现,因为它会暴露一个危险的大量缓慢的方法,例如#get(索引)在返回的列表视图(邀请性能错误)。 ListIterator也将是一个痛苦的实现(尽管我提交了一个patch年前覆盖)。

由于索引方法在过滤的List视图中不能有效,所以最好只使用过滤后的Iterable,而不包含它们。

http://stackoverflow.com/questions/8458663/guava-why-is-there-no-lists-filter-function

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:java – Guava:为什么没有Lists.filter()函数?