在多个列表中搜索具有特定标题的对象
本文关键字:标题 对象 列表 搜索 | 更新日期: 2023-09-27 18:03:59
我需要用对象遍历3个列表。每个列表中的每个对象都具有相同的结构。列表中的每个对象都有一个标题_objectTitle
这些是我的清单
List<Example> exampleList_1;
List<Example> exampleList_2;
List<Example> exampleList_3;
因此我需要遍历for循环中的所有列表所以exampleList_1[i] exampleList_2[i]
…等等,看看其中是否有一个对象具有_objectTitle
等于"string string string"
。在这种情况下,所有标题都是唯一的,并且只能返回一个对象。
如果项目在3个不同的列表中,最简单的方法是使用Concat()方法。
var found = exampleList_1.Concat(exampleList_2).Concat(exampleList_3).SingleOrDefault(e => e._objectTitle == "string string string");
这将返回一个单独的项目,标题设置为"string string string",如果没有找到,则返回NULL。
在搜索标题之前,您可以通过将列表连接在一起来同时搜索这三个列表:
var example = exampleList_1.Concat(exampleList_2)
.Concat(exampleList_3)
.SingleOrDefault(x => x._objectTitle == "someTitle");
你可以使用SingleOrDefault()
,因为标题是唯一的,最多你期望一个匹配。
如果没有找到标题,则example
将为null
。