gpt4 book ai didi

c# - 为什么 Linq 没有 Head 和 Tail?

转载 作者:太空狗 更新时间:2023-10-29 18:04:39 26 4
gpt4 key购买 nike

我经常发现自己想在 IEnumerables 上使用 Head 和 Tail 方法,它们不作为 Linq 的一部分存在。虽然我可以轻松编写自己的代码,但我想知道是否有意将它们排除在外。例如,

var finalCondition = new Sql("WHERE @0 = @1", conditions.Head().Key, conditions.Head().Value);
foreach (var condition in conditions.Tail())
{
finalCondition.Append("AND @0 = @1", condition.Key, condition.Value);
}

那么,关于 Linq 的最佳实践是什么?我一直在寻找这个用途的事实是否表明我没有做推荐的事情?如果不是,那么为什么 Linq 中没有实现这种通用功能范例?

最佳答案

从技术上讲,您的 Head 应该是 .First()你的尾部会是.Skip(1) .但也许你能找到更好的解决方案?就像使用 .Aggregate()在你的 IEnumerable 上?

关于c# - 为什么 Linq 没有 Head 和 Tail?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19585426/

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