ArrayList a = new ArrayList();
                    int[] b = { 1, 2 };
                    int testi;
                    int testl;
                    int testj;
                    
                    a.Add(b);
                    b[0] = 3;
                    b[1] = 4;
                    testl=a.Count;
                        
                    a.Add(b);                    for (testi = 0; testi < testl; testi++)
                    {
                        for(testj in a[testi])
                            {
                                Response.Write(a[testi,testj]);
                            }
                     
                    }
我想实现这样的方法,求给出正确答案的方法

解决方案 »

  1.   

    你可以先定义数组但是不用给出范围,等确定了范围后再初始化数组。另外一个办法是用list吧。
      

  2.   

    我现在用的就是list,只是给出行号无法获得列长度。就是无法现在的错误是第二层循环的嗲发那个,你看下代码再说好不。
      

  3.   

    就一个双重循环,没别的东西,第一层的长度我通过count获得出来然后循环出来,下面一层,我不知道如何可以循环,问题就出在这里。
      

  4.   

    你可以这么写:
    List<int[]> a = new List<int[]>();
    int[] b = new int[] { 1, 2 };
    a.Add(b);
    b = new int[] { 3, 4 };
    a.Add(b);
    foreach (int[] w in a)
    {
    foreach (int y in w)
    Response.Write(y + "<br/>");
    }
    输出:
    1
    2
    3
    4
      

  5.   

    或者用for循环也可以:
    List<int[]> a = new List<int[]>();
    int[] b = new int[] { 1, 2 };
    a.Add(b);
    b = new int[] { 3, 4 };
    a.Add(b);
    for (int i = 0; i < a.Count; i++)
    {
    for (int j = 0; j < a[i].Length; j++)
    Response.Write(a[i][j] + "<br/>");
    }
      

  6.   

    通过5楼,6楼的帮助看懂了。
    试试这样
    List<int[]> a = new List<int[]>( 
       new int[]{1, 2},
       new int[]{3, 4}
      );// for or foreach ...