【发布时间】:2009-12-05 01:18:29
【问题描述】:
我会尽力在这里解释我的头痛。
我有 2 个通用列表,它们包含相同的类型,因此也包含相同类型的字段:
List<Car> car1 = GetCars1();
List<Car> car2 = GetCars2();
List<Car> finalListOfCars2 = new List<Car>();
所以 Car 有一个名为 BumperTypeID 的字段
我想比较列表 car1 和 car2 并从 car2 中找到那些 car2[index].BumperTypeID 存在于 car1 的 BumperTypeID 列表中的所有 BumperTypeID 列表中的汽车。如果在 car1 的 BumperTypeID 列表中找到它,那就太好了……但我需要在此之后再做一次检查以检查 ColorIsBlack。如果第二次检查结果为真,那么我们很好,将当前的 car2[index] 添加到 finalList。
所以我不确定如何诚实地处理这件事。光是想想就让我头疼。它可能没有我想的那么糟糕,但我无法找到一种在代码中解决这个问题的好方法。
【问题讨论】:
-
您能展示一下您目前拥有的代码吗?我很难准确地了解您正在使用的内容。
-
让我再次分解一下。两个列表都有我要检查的这个 ID。我需要像十字路口一样...给我一个列表,列出在两个列表中都可以找到它们的 ID。然而,主要的警告和问题是,每场比赛,我都需要做一些进一步的处理。因此,如果我在两个列表中都找到 ID 4,那很好,但是我需要再检查其他内容,因为我确实找到了匹配的内容...如何在每次搜索之间插入另一组逻辑并找到其中的任何 ID两个列表都是问题
-
所以在你给我匹配的列表之前,我需要在逻辑方面做一些额外的事情。我需要在每次找到匹配项之后再做一次检查(比如子检查)确定我是否真的应该将其包含在最终列表结果中
-
所以它就像:1)循环并做一个交集 2)在每场比赛中做其他事情,如果其他事情是好的/坏的,那么让它失效或再次验证以确定是否保留它相交的列表。
-
我还没有编码,因为我想不出一个好的方法来做到这一点。试图找出一个体面的方法来解决这个问题,我头疼。
标签: c#