gpt4 book ai didi

c# - Linq,使用 ToLookup 将值投影到不同的命名变量

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

var tmpProjection = myCollection.ToLookup(t => t.SomeBoolValue);
var listOneFinal = tmpProjection[true];
var listTwo = tmpProjection[false];

第一个问题,有没有办法以更短的方式将它分配给 listOne 和 listTwo,我知道我在这里很迂腐,......只是问问。

现在,

var listThree = listTwo.ToLookup(t => t.SomeOtherBoolValue);
var listFourFinal = listThree[false];
var listFiveFinal = listThree[true];

所以在这种情况下,我(最终)只需要 listOneFinal、listFourFinal 和 listFiveFinal——但我在两者之间创建了这个临时的东西……有没有办法减少这个。

我只谈代码方面,不谈性能或代码关键性。

最佳答案

bool 在传达意图方面有点弱。 Int 好一点,enum 最好。

Lookup<int, T> myLookup = myCollection
.ToLookup(t =>
t.someBoolValue ? 1 :
t.someOtherBoolValue ? 4 :
5
);

var listOne = myLookup[1];
var listFour = myLookup[4];
var listFive = myLookup[5];

关于c# - Linq,使用 ToLookup 将值投影到不同的命名变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3899767/

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