我有以下 C# 代码:
List<int[,]> l1 = new List<int[,]>();
l1[0] = new int[1, 1];
它直接抛出 System.ArgumentOutOfRangeException。
怎么会?
列表默认创建为空,替换[]
为Add()
List<int[,]> l1 = new List<int[,]>();
l1.Add(new int[1, 1]);
或使用 .NET 4.0 初始化程序(语义与上述相同):
List<int[,]> l1 = new List<int[,]>(){new int[1, 1]};
您需要在列表上使用 List.Add而不是索引访问l1.Add(new int[1, 1]);