gpt4 book ai didi

c# - 比较两个列表并生成具有匹配结果的新列表 C#

转载 作者:行者123 更新时间:2023-11-30 13:45:56 25 4
gpt4 key购买 nike

大家好,我是一名初学者计算机工程师,我遇到了一个小问题。

我正在尝试比较两个大小不同的列表(列表 A 和列表 B),并生成一个与列表 A 大小相同的新列表(列表 C),其中包含 C# 中两个列表的匹配结果。在这里 - 让我用一个例子来解释。

例如有这两个列表:

list A: "1", "2", "3", "4", "5", "6"
list B: "1", "4", "5"

我想要这样的结果:

list C: "1", "null", "null", "4", "5", "null"

到目前为止,我已经尝试过这段代码:

List<string> C = new List<string>();

// nA is the length of list A & nB is the length of list B
for (int x = 0; x < nA; x++)
{
for (int y = 0; y < nB; y++)
{
if (listA[x] == listB[y])
{
listC.Add(lista[x]);
}
else
listC.Add(null);
}
}

我使用的代码没有执行预期的操作。我究竟做错了什么?还有另一种方法可以做我需要的吗?我需要一些帮助,我希望我的问题的解决方案也能帮助其他人。我希望我已经说清楚了,希望你们能帮助我解决我的问题。非常感谢您的帮助。

非常感谢您的回答:)

最佳答案

您可以使用此 LINQ 查询:

List<string> listC = listA
.Select(str => listB.Contains(str) ? str : "null")
.ToList();

我会使用它,因为它更具可读性和可维护性。

关于c# - 比较两个列表并生成具有匹配结果的新列表 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25117171/

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