开发者

Multiplying all values in IEnumerable<int>

I have the following code and I am trying to work out how to multiply all values in my IEnumerable<int>.

I thought there might by a Multiply method like there is with Sum. I guess I could do a foreach over each item but these days开发者_Go百科 this seems tedious.

Any suggestions?

//1:2:6
string[] pkgratio = comboBox1.SelectedRow.Cells["PkgRatio"].Value.ToString().Split(':');
var ints = pkgratio.Select(x => int.Parse(x));         

int modvalue = ints....


What you're looking for is the Aggregate function

int modValue = ints.Aggregate(1, (x,y) => x * y);

The Aggregate function takes in an initial accumulator value and then applies an operation to every value in the enumeration creating a new accumulator value. Here we start with 1 and then multiply ever value by the current value of the accumulator.

Note: In the case of an empty ints value this will return 1. This may or may not be correct for your situation.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜