gpt4 book ai didi

c# - 如何将查找作为 2 个旧查找的联合?

转载 作者:可可西里 更新时间:2023-11-01 09:03:14 25 4
gpt4 key购买 nike

如何从 2 个旧查找的联合中获得查找?似乎 a = a.Union(b) 对他们不起作用。

最佳答案

如果您有查找来源的原始列表,可能会更容易。如果您使用 ListsDictionary 而不是查找,也可能会更容易。但是,仍然可以将两个查找对象合并为一个新对象。基本思想是从查找中检索原始值,然后从两者的连接集中创建一个新的查找。

var a = new[] {"apple","aardvark","barn"};
var b = new[] {"baboon", "candy", "cork"};

var al = a.ToLookup (x => x[0]);
var bl = b.ToLookup (x => x[0]);

var cl = al.Concat(bl).SelectMany(x => x).ToLookup(x => x[0]);

如果您也不知道原始的键选择器函数,您可以使用这个变体。

var cl = al.Concat(bl)
.SelectMany(lookup => lookup.Select(value => new { lookup.Key, value}))
.ToLookup(x => x.Key, x => x.value);

关于c# - 如何将查找作为 2 个旧查找的联合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12478958/

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