gpt4 book ai didi

c# - 具有 2 个参数和多个结果输出的 lambda 表达式

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

我正在尝试找出是否有可能在 lambda 表达式函数中使用两个输入参数以获得可放入数组的多个结果,而不是使用如下所示的 for 循环。

int N = 10;
int[] numbs = new int[N] { 3, 5, 6, 7, 8, 11, 15, 17, 28, 55 };
int[] results = new int[N-1];

for (int i=0; i < N-1; i++)
results[i] = numbs[i+1] - numbs[i];

foreach (int i in results)
Console.WriteLine(i);

output 2,1,1,1,3,4,2,11,17

像这样:

results = numbs.Select( (x,y) => y-x );

最佳答案

你可以使用 Zip将数组与自身对齐,移动一个索引:

results = numbs.Zip(numbs.Skip(1), (n1, n2) => n2 - n1)
.ToArray();

关于c# - 具有 2 个参数和多个结果输出的 lambda 表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38412708/

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