List <obj> list1= new ArrayList<obj>();
obj a1 = new obj("value11", value21);
obj a2 = new obj("value12", value22);
obj a3 = new obj("value11", value23);
list1.add(a1);
list1.add(a2);
list1.add(a3);
现在我需要获取数组列表中的对象,其值为&#34; value11&#34;。
预期的对象是a1和a3
答案 0 :(得分:0)
使用此行 的System.out.println(list1的);
答案 1 :(得分:0)
使用lambda表达式:
List<obj> result = list1.stream()
.filter(p -> p.someProperty == "value11").collect(Collectors.toList());
答案 2 :(得分:0)
过滤ArrayList的示例:
List<String> items = new ArrayList<>();
items.add("A");
items.add("B");
items.add("C");
items.add("D");
items.add("E");
items.stream()
.filter(s->s.contains("D"))
.forEach(System.out::println);
答案 3 :(得分:0)
用户lambda表达式如下:
List <obj> list1= new ArrayList<obj>();
obj a1 = new obj("value11", value21);
obj a2 = new obj("value12", value22);
obj a3 = new obj("value11", value23);
list1.add(a1);
list1.add(a2);
list1.add(a3);
让我们假设我们的obj类是这样的
public class obj
{
public String item_key {get;set;}
public String item_value {get;set;}
}
然后你可以找到这样的东西:
var i = list1.where(model=>model.item_key.equal("value11"));
这将返回包含&#34; value11&#34;
的所有项目