我正在学习LINQ并且有一个非常简单的问题,我认为这将有助于我更好地理解技术.如何找到一组int的产品?
例如,LINQ的方法是什么:
int[] vals = { 1, 3, 5 };
return vals[0] * vals[1] * vals[2];
Run Code Online (Sandbox Code Playgroud)
Gre*_*ech 31
这可行:
var product = vals.Aggregate(1, (acc, val) => acc * val);
Run Code Online (Sandbox Code Playgroud)
你从一个种子开始,1然后用两个参数为你的每个值调用函数,acc这两个参数是当前的累积值,val它是数组中的值; 该函数将当前累计值乘以数组中的值,并将该表达式的结果传递acc给下一个函数.即,您提供的数组的函数调用链将是:
(1, 1) => 1
(1, 3) => 3
(3, 5) => 15
Run Code Online (Sandbox Code Playgroud)