我有2个列表。首先是具有int属性ID的对象列表。另一个是整数列表。与int列表相比较的int属性列表
我需要比较这两个列表,并将对象复制到一个新列表中,只有基于ID的两个列表之间匹配的对象。现在我正在使用2个foreach循环,如下所示:
var matched = new list<Cars>();
foreach(var car in cars)
foreach(var i in intList)
{
if (car.id == i)
matched.Add(car);
}
这看起来好像会很慢,因为它在每个列表上迭代多次。有没有办法做到这一点,而不使用这样的2个foreach循环?
你能重复整数吗?你可以有相同的ID重复的汽车?在这种情况下应该做些什么? –
我不会在任何一个列表中都有重复,不会。 – mameesh
然后我会用一个'HashSet'来表达一个非常接近Jamiec答案的东西。 –