2015-01-08 74 views
0

我期待選擇使用兩個條件在LambdaJ選擇,我試過使用and()功能,但我不知道如何使用它。上述代碼選擇使用一個條件。我怎麼可以添加另一個條件?多個條件下選擇LambdaJ

select(filteredPB,  having(on(Table.class).getId(), IsEqual.equalTo(key))) 
+0

這是不是很清楚你想要做什麼。看來你想選擇id等於某個鍵的項目。但是還有其他一些你沒有具體提到的條件? – Tony

+0

編輯,是的,我想添加另一個條件,但我不知道如何去做 – geogeek

+1

你可以像這樣嵌套:select(select(filteredPB,having(on(Table.class).getId(),IsEqual .equalTo(key))),擁有(Condition2),IsEqual ...)'?選擇返回一個迭代,所以它_might_工作。 – Tony

回答

0

您可以使用Matchers.allOf作爲ORs和Matchers.anyOf作爲ORs。像這樣:

select(filteredPB, Matchers.allOf(
    having(on(Table.class).getId(), IsEqual.equalTo(key)), 
    having(on(Table.class).getValue(), IsEqual.equalTo(value)) 
))