我正在尝试让自己熟悉 lambdaj,但不确定如何最好地解决这个问题。给定以下测试:
@Test
public void test() {
final List<String> l1 = new ArrayList<>();
final List<String> l2 = new ArrayList<>();
l1.add("same");
l1.add("Upper");
l1.add("lower");
l2.add("same");
l2.add("upper");
l2.add("lower");
l2.add("extra");
final List<String> l3 = Lambda.filter(Matchers.not(Matchers.isIn(l1)), l2);
Assert.assertThat("There should be one item in l3", l3.size(), Matchers.equalTo(1));
}
我怎样才能让 Matcher 不关心大小写?即,无论大小写如何,我都想要一个不在 l1 中的 l2 中的项目列表?我宁愿不必运行另一个 Lambda 来将每个字符串列表转换为相同的大小写,而是一种修改 Matcher 以按照我的意愿进行操作的方法。这是可能的还是我必须先将这些项目转换为相同的情况?