可以使用Tuple
来存储信息,并Zip
方法采取信息从两个列表,这样
List<Tuple<string, string>> bothLists = Name.Zip(Address, (n, a) => new Tuple<string, string>(n, a)).ToList();
但我认为最好的方法是创建与您的域类:
public class Person
{
public string Name { get; set; }
public string Address { get; set; }
}
然后
List<Person> bothLists = Name.Zip(Address, (n, a) => new Person{Address = a, Name = n}).ToList();
但是,如果你有多个列表,你需要嵌套多个拉链,这是不漂亮。如果你是当然所有列表都有相同数量的元素,只是遍历它们。
在LINQ:
List<Person> multipleLists = Name.Select((t, i) => new Person
{
Name = t, Address = Address[i], ZipCode = ZipCode[i]
}).ToList();
没有LINQ(严重的是,有没有错,一个for循环)
List<Person> multipleLists = new List<Person>();
for (int i = 0; i < Name.Count; i++)
{
multipleLists.Add(new Person
{
Name = Name[i],
Address = Address[i],
ZipCode = ZipCode[i]
});
}
你也可以使用一个Tuple<string, string, string, [...]>
如果你想远离班了。
你的意思是Dictionary? –
HOKBONG