由于C#非常灵活(部分原因在于其解释性质),我想知道以下功能是否随时可用。否则我会自己动手。
我有一个List<MyModel>
,使用嵌套循环遍历会更方便/更方便:
for (col = 1 to lastCol)
for (row = 1 to lastRow)
scrutinize(row, col);
补充:也许我应该在列中使用foreach
?
答案 0 :(得分:2)
回答标题问题,您可以使用LINQ将一维列表分解为2D数组。对于简单的整数列表:
List<int> list = new List<int>() { 1, 2, 3, 4, 5, 6, 7, 8 };
var array =
list.Select((v, i) => new { Value = v, Index = i})
.GroupBy(x => x.Index / 4, x => x.Value, (key,values) => values.ToArray())
.ToArray();
然后您可以使用二维list
来访问array
元素。