gpt4 book ai didi

c# - 比较 List 的内容以找到匹配项

转载 作者:行者123 更新时间:2023-11-30 19:31:30 26 4
gpt4 key购买 nike

对于我正在编写的一些代码,我有一个方法可以检查新对象是否具有与所有现有对象相似的属性。

此方法返回 Dictionary<int, List<int>> .它们的键是唯一的对象ID,列表包含与新对象相似的属性。 (Constant.Name、Constant.StartDt 等)。

现在,有几种不同类型的比赛不能发生。我需要一种方法来将匹配项的各种组合与这些列表中的内容进行比较,并且我需要能够知道匹配了哪个匹配项。

因此,我想为每个匹配创建一个列表,并将每个列表与返回的属性列表进行比较。但是,我知道我以前在 Java 中做过类似的事情并且它有一个缺陷 - 它按顺序匹配......我只需要知道每个列表是否包含这些项目。

那么,两个问题:

  1. 这是找到匹配项的最佳方法吗?
  2. 如果是这样,您建议的方法是什么?循环遍历它们?还是 C# 中内置了一些我不知道的东西?

最佳答案

您可以使用 LINQ Intersect 方法:

http://msdn.microsoft.com/en-us/library/system.linq.enumerable.intersect.aspx

        int[] id1 = { 44, 26, 92, 30, 71, 38 };
int[] id2 = { 39, 59, 83, 47, 26, 4, 30 };

IEnumerable<int> both = id1.Intersect(id2);

foreach (int id in both)
Console.WriteLine(id);

关于c# - 比较 List<int> 的内容以找到匹配项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7125178/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com