使用foreach循环为c#中的两个列表创建列表值

Hin*_*nif 3 c# foreach loops list

List<String> listA = new List<string> { "A1", "A2" };
List<String> listB = new List<string> { "B1", "B2" };

for(int i = 0; i < listA.Count; i++)
{
    text += listA[i] + " and " + listB[i];
}
Run Code Online (Sandbox Code Playgroud)

如何使用foreach循环执行此操作?

nem*_*esv 12

您可以使用Linq和Zip方法:

List<String> listA = new List<string> { "A1", "A2" };
List<String> listB = new List<string> { "B1", "B2" };

foreach (var pair in listA.Zip(listB, (a,b) => new {A = a, B = b}))
{
    text += pair.A + " and " + pair.B;
}
Run Code Online (Sandbox Code Playgroud)