我有一个对象列表,列表非常大。对象是
class Sample {
String value1;
String value2;
String value3;
String value4;
String value5;
}
现在我必须在列表中搜索对象的特定值。假设 value3=='three'
我必须返回那些对象(我的搜索并不总是基于 value3)
清单是
List<Sample> list = new ArrayList<Sample>();
这样做的有效方法是什么?
谢谢。
原文由 Jeevi 发布,翻译遵循 CC BY-SA 4.0 许可协议
您可以尝试 Apache Commons Collections 。
有一个类 CollectionUtils 允许您通过自定义 Predicate 选择或过滤项目。
您的代码将是这样的:
更新:
在 java8 中,使用 Lambdas 和 StreamAPI 这应该是:
好多了!