如何在 Speedment 的过滤器中使用 OR
How can I use OR in filters with Speedment
当我想过滤 Speedment 流时如何使用 OR?如何与来自纽约、新泽西或宾夕法尼亚的用户一起编写流?
users.stream()
.filter(User.STATE.equals("NY"))
.collect(Collectors.toList())
这会生成一个仅来自纽约的用户列表...
在这种特殊情况下,至少有两种方法:
a) 使用 Predicate::or
b) 使用 in
谓词
谓词::或
users.stream()
.filter(
User.STATE.equals("NY")
.or(User.STATE.equals("NJ"))
.or(User.STATE.equals("PA"))
)
.collect(Collectors.toList());
in() 谓词
users.stream()
.filter(User.STATE.in("NY", "NJ", "PA"))
.collect(Collectors.toList());
我会使用后一种解决方案,在我看来它看起来更好。
当我想过滤 Speedment 流时如何使用 OR?如何与来自纽约、新泽西或宾夕法尼亚的用户一起编写流?
users.stream()
.filter(User.STATE.equals("NY"))
.collect(Collectors.toList())
这会生成一个仅来自纽约的用户列表...
在这种特殊情况下,至少有两种方法:
a) 使用 Predicate::or
b) 使用 in
谓词
谓词::或
users.stream()
.filter(
User.STATE.equals("NY")
.or(User.STATE.equals("NJ"))
.or(User.STATE.equals("PA"))
)
.collect(Collectors.toList());
in() 谓词
users.stream()
.filter(User.STATE.in("NY", "NJ", "PA"))
.collect(Collectors.toList());
我会使用后一种解决方案,在我看来它看起来更好。