标签: c# lambda
我正在尝试用C#教自己lambda表达式,而我似乎已经把自己弄得一团糟......
这基本上是我想要完成的,请假设ar1& ar2将始终具有相同的长度。
double sum = 0; for(int x=0; x<size; x++){ sum += (ar1[x]*ar2[x]); }
注意数组正在成倍增加。
是否有可以在一行中完成此操作的Lambda函数?
谢谢
答案 0 :(得分:5)
double sum = ar1.Zip(ar2, (a1, a2) => a1 * a2).Sum();
Zip - 将lambda应用于两个序列的相应元素
Sum - 计算结果总和