例如:
我在UI端有一个这样的表:
这是包含上述所有数据的列表:
List myList;
现在我想使用类似这样的方法按categoryName,languageID或categoryID进行搜索:
private List search(List myList, String columnName, String criteria)
那么我只需执行以下操作即可获得符合我标准的结果:
第一种情况:列表< Bean> results = this.search(myList,“categoryName”,“Dog H”);
第二种情况:列表< Bean> results = this.search(myList,“categoryName”,“Dog House”);
(此时结果列表将在两种情况下返回3个元素 – 根据上表).
是否有可能实现这一目标?正如大家们所看到的,这是一种类似于SQL的%LIKE%函数的搜索,但主要关注java.util.List
提前致谢.
解决方法:
我使用以下方法解决了我的问题:
然后我通过这种方式导入了以下命名空间:
import static ch.lambdaj.Lambda.*;
并使用以下方法从我的标准中获得结果:
List results = select(myList, having(on(MyBean.class).getCategoryName(), org.hamcrest.Matchers.containsString("Dog H")));
所以,在那行代码中,我传递myList,“我的问题”所要求的“列”和标准.
该行的其余代码很容易理解,所以我不会写它.
希望这也有助于其他人.
标签:java,arraylist
来源: https://codeday.me/bug/20190716/1480441.html