string[,] cltext = new string[1000,3];
我是这样声明的!但我想要数组自动增加大小,而不是我指定它的大小?????应该怎样声明呢????
请教各位高手了!谢谢!!!!!

解决方案 »

  1.   

    使用ArrayList类,你可以随意增加元素,它自动适应地变化长度和扩展空间
      

  2.   

    ArrayList al=new ArrayList();
    al.Add("a");
    al.Add(1);
    al.Add(true);
      

  3.   

    string[] a = new string[5];
    string[] b = new string[a.Length];
    a.CopyTo(b,0);
    a =new string[10];
    b.CopyTo(a,0);
      

  4.   

    回复人: LGame(JGame) ( ) 信誉:100  2006-02-17 10:22:00  得分: 0  
     
     
       string[] a = new string[5];
    string[] b = new string[a.Length];
    a.CopyTo(b,0);
    a =new string[10];
    b.CopyTo(a,0); 
     
    -------------------------------------------------------速度比ArrayList快,因为少了inbox和outBox的时间
      

  5.   

    给你作个小例子;
    using System;
    using System.Collections;
    namespace ConsoleApplication1
    {
    class Class1
    {
                      [STAThread]
    static void Main(string[] args)
    {
    ArrayList[] cltext1=new ArrayList[3];
    cltext1[0].Add("a");
    //用同样的方式加;
    }
    }
    }
      

  6.   

    给你一个小例子,但愿对你有帮助。public static Array Redim(Array origArray,Int32 desiredSize)
            {
                Type t = origArray.GetType().GetElementType();            Array newArray = Array.CreateInstance(t,desiredSize);            Array.Copy(origArray,0,newArray,0,Math.Min(origArray.Length,desiredSize));            return newArray;
            }        public void ArrayReDim()
            {
                int[] intAry = new int[0];            intAry = (int[])Redim(intAry,3);
                intAry[0] = 1;
                intAry[1] = 2;
                intAry[2] = 3;
            }
      

  7.   

    都什么年代了,还用ArrayList,还拷贝?List<T>是你最明智的选择
      

  8.   

    我也用的ArrayList,不用指定大小,可以动态增长,当超过分配内存最大值的时候,自动扩大一倍.