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

解决方案 »

  1.   

    泛型是可以不去指定大小的->List<double>
    但是二维数组用泛型行不行我也不知道 请高手解答吧。。
      

  2.   

     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());
      

  3.   


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

  4.   

    楼上的代码?ArrayList intArr = new intArr();
    这个对?
      

  5.   

    看了就是3楼的方法了,可以添加不同大小的一维数组,然后求这些数组中个数最大的作为二维数组的列数,list的成员个数作为行数。