使用LINQ从2个列表中返回List

时间:2012-08-30 01:53:24

标签: c# linq

  

可能重复:
  How do I add two lists in Linq so addedList[x] = listOne[x] + listTwo[x]?

我有两个行数相同的IList对象

IList<double> A;
IList<double> B;

我希望返回一个IList,我执行foreach计算,为简单起见假设我只想为列表中的每个项添加2个值A [n] + B [n]。

你会如何使用LINQ做到这一点?

2 个答案:

答案 0 :(得分:8)

使用Zip扩展名方法:

var result = A.Zip(B, (a, b) => a + b);

答案 1 :(得分:1)

严格:

A.Zip(B, (x, y) => x + y).ToList();

虽然一如既往,但请考虑是否可以不必将其放入列表中,如果可以,请先忽略.ToList()