【发布时间】:2013-11-17 21:15:38
【问题描述】:
给定一个集合,我需要一次遍历所有元素三个(或其他数量)。例如:
string[] exampleData = {"John", "Doe", "1.1.1990", "Jane", "Roe", "2.2.1980"}
for(int i = 0; i < exampleData.Length; i += 3) {
CreateUser(foreName: exampleData[i], surName: exampleData[i+1], dateOfBirth: exampleData[i+2]);
}
如果 exampleData 是 IEnumerable 而不是数组,我如何有效地重现这一点?
【问题讨论】:
-
您可以在迭代之前调用 .ToList() 对 List 进行规范化
-
虽然可以安排这样的迭代,但这将解决错误的问题。正确的做法是将数据从数组中取出并放入适当的
Person类型的集合中。 -
@Jon 我同意。最好的方法是结构化数据以更好地满足要求。
-
IMO 你的代码比你可以用内置的 LINQ 函数构建的任何代码都要好。