2014-02-17 110 views
2

我有兩個項目列表,您能否指導我如何連接兩者的值並將連接值作爲值添加到第三個列表中。在兩個列表中連接字符串以創建第三個列表

例如,如果List<string> FromA,B,CList<string> To具有1,2,3然後List<string> All應該有A1,B2,C3。我最好喜歡使用lambda表達式。

回答

1

如果項目的數量都在這兩個列表相等的,那麼你可以這樣做:

var list3 = list1.Select((item, index) => item + list2[index]).ToList(); 
3

使用LINQ的Zip擴展方法:

using System.Linq; 
... 

var list1 = new List<string> { "A", "B", "C" }; 
var list2 = new List<string> { "1", "2", "3" }; 
var list3 = list1.Zip(list2, (x, y) => x + y).ToList(); // { "A1", "B2", "C3" } 
4

這不是串聯 - 這就是匹配的兩個序列的成對。你與LINQ的Zip方法做到這一點:

Zip施加指定的函數,以兩個序列的相應的元件,產生的結果的序列。

var res = from.Zip(to, (a,b) => a + b).ToList(); 
相關問題