java - 如何在 java.Util.List<Type> 中按条件搜索元素?

标签 java arraylist

例如:

我在 UI 端有一个这样的表:

enter image description here

这是上面显示的所有数据的列表:

List<MyBean> myList;

现在我想按 categoryName 搜索, languageIDcategoryID使用这样的方法:

private List<MyBean> search(List<MyBean> myList, String columnName, String criteria)

然后我只需执行以下操作以获得符合我的条件的结果:

第一个案例: List<Bean> results = this.search(myList, "categoryName", "Dog H");

第二种情况: List<Bean> results = this.search(myList, "categoryName", "Dog House");

(此时 results 列表将在两种情况下返回 3 个元素 -- 根据上表)。


这有可能实现吗?正如你们所看到的,这是一种类似于%LIKE%的搜索。来自 SQL 的函数但专注于java.util.List

提前致谢。

最佳答案

我使用以下方法解决了我的问题:

然后我就这样导入了下面的命名空间:

import static ch.lambdaj.Lambda.*;

然后使用这个根据我的标准得到结果:

List<MyBean> results = select(myList, having(on(MyBean.class).getCategoryName(), org.hamcrest.Matchers.containsString("Dog H")));

所以,在那行代码中,我传递了 myList“column”criteria,正如我在问题中所要求的那样。

该行的其余代码很容易理解,所以我不会写。

希望这对其他人也有帮助。

关于java - 如何在 java.Util.List<Type> 中按条件搜索元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11839073/

相关文章:

java - ConcurrentModificationException GL2/更新线程,带同步和迭代器

java - 加速利用 2 个大数组列表的嵌套 for 循环

java - 如何从数组中查找项目并将其添加到列表中 (Java)

java - 将内部 bean 添加到应用程序上下文会抛出 No default constructorfound 异常

java - 这个执行数学运算的 Java 程序遇到问题

java - 使用 DTO 的 Post 方法

java - 将一个 ArrayList 添加到另一个 ArrayList

java - 找不到在对象类中定义的符号(方法)

java - 在 java servlet 的 init 中唯一标识服务器的好方法是什么

java - 如何将两个映射合并为一个并保留重复值