日期:2014-05-18  浏览次数:20729 次

大小能变化的二维数组可以实现吗?类似于arraylist的
定义一个double[]A=new double[m,n];
但m和n的值是随着程序的运行不断变大的,比如一开始m=5,但后来由于要读入新数据,数组需要变成m=6,7,。。。
到底最后是多少事先是不知道的。怎么实现?
我想了一种办法,把每行数据存入一个一维数组里,第一个元素指明其长度,然后存入arraylist里,等程序运行到结尾处,再把这些元素读出来,确定数组的最终大小,但好像挺麻烦,有更简单的方法吗?



------解决方案--------------------
泛型是可以不去指定大小的->List<double>
但是二维数组用泛型行不行我也不知道 请高手解答吧。。
------解决方案--------------------
List<double[]> vals = new List<double[]>();
double[] items = { 2,4,5 };
vals.Add(items);

MessageBox.Show(vals.Count.ToString());
MessageBox.Show(vals[0][0].ToString());
------解决方案--------------------
C# code

//使用泛型、集合等都可以实现
ArrayList arr = new ArrayList();
ArrayList intArr = new intArr();
intArr.add(1);
intArr.add(2);
arr.add(intArr);
//....