C# 扩展二维数组大小?
可能重复:C# 扩展二维数组大小?,c#,C#,可能重复: 我有2D数组:myarray[5,6]; 我的数组已经满了。但是,我仍然想在其中添加更多的元素。 那么,如何扩展数组的大小呢? 或 如何声明动态2D数组?(很抱歉问了一个愚蠢的问题:P)您可以使用Array.Resize(): 更新 对不起,我刚才错过了2D: 看看。如果需要扩展大小,则必须创建一个新阵列。如果你看右边,你可以看到答案 您需要的是一个列表的列表 List<List<int>> data = new List<List<int>
我有2D数组:myarray[5,6]; 我的数组已经满了。但是,我仍然想在其中添加更多的元素。 那么,如何扩展数组的大小呢? 或
如何声明动态2D数组?(很抱歉问了一个愚蠢的问题:P)
您可以使用
Array.Resize()
:
更新
对不起,我刚才错过了2D:
看看。如果需要扩展大小,则必须创建一个新阵列。如果你看右边,你可以看到答案 您需要的是一个
列表
的列表
List<List<int>> data = new List<List<int>>();
for(int i = 0; i < rowsToAdd; i++)
{
List<int> newRow = new List<int>();
for(int j = 0; j < columnsToAdd; j++)
{
newRow.Add(j);
}
data.Add(newRow);
}
列表数据=新列表();
for(int i=0;i
然后,要添加新行,请执行以下操作:
List<int> nextRow = new List<int>(){0,1,2,3};
data.Add(nextRow);
List nextRow=new List(){0,1,2,3};
数据。添加(下一步);
恐怕您要求的是错误问题的解决方案。
在大多数情况下,不应手动调整数组的大小。使用和通用列表(或通用列表的通用列表),如本文所述
请阅读以下内容:
考虑使用其他人建议的通用列表。仅供参考,这根本不会更改数组,它只是创建一个新的、更大的数组,并从旧数组复制所有数据。
List<int> nextRow = new List<int>(){0,1,2,3};
data.Add(nextRow);