如何过滤Collection< String>使用lambdaj和String.matches方法.
我是lambdaj的新手,并且感到愚蠢,因为给出的示例比这更复杂.
解决方法:
如果可以使用hading(on(…))构造函数进行调用,则调用可能如下所示:
select(collection, having( on(String.class).matches("f*") ))
但不幸的是,这是不可能的,因为String类是最终的,依此类推(String.class)无法创建具有匹配器所需的代理.
尽管hamcrest没有带来正则表达式匹配器,但是您不必自己编写.网络提供了几种实现.我想在现成的公共库中看到这样的匹配器,可以将其简单地包含为依赖项,而不必复制源代码.