gpt4 book ai didi

c# - 选择->引用自身(当前创建的列表)

转载 作者:行者123 更新时间:2023-11-30 21:36:30 27 4
gpt4 key购买 nike

有没有办法在创建时(在方法内部)引用由 Select 方法创建的 List (IEnumerable)

我有一个看起来像这样的字典:

Dictionary<char, char> d = new Dictionary<char, char>() 
{
{'a', 'b'},
{'b', 'a'},
{'c', 'd'},
{'d', 'c'},
//...
};

它通过 string.Join("", d.Select(...)) 转换为字符串。字典中的重复值(ab 和 ba)被整理出来。我试过这个:

                                   //Checks for an earlier swapped duplicate........If not, select it
d.Select(x => !enumerable.Contains(x.Value.ToString() + x.Key.ToString()) ? x.Key.ToString() + x.Value.ToString() : string.Empty);

这里,“可枚举”指的是列表,它是由 Select 方法创建的,但我还没有找到这样做的方法。

预期的最终结果应该是这样的:"abcd" 而不是 "abbacddc" 只是连接键和值。

我可以用 for 循环解决这个问题,但这需要额外的代码..

最佳答案

不,但您可以使用 AggregateDistinct :

var enumerable = d.Aggregate(string.Empty,
(acc, kv) => string.Concat(acc,
kv.Key,
kv.Value))
.Distinct();

enumerable将是 IEnumerable<char>具有所需的输出。

关于c# - 选择->引用自身(当前创建的列表),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48122793/

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