ArrayList arr = new ArrayList();
        arr.Add("中国");
        arr.Add("美国");
        arr.Add("日本");
        arr.Add("英国");        foreach (object o in arr)
        {
            Response.Write(o + "<br>");
        }
        ArrayList m = ArrayList.Repeat(arr,arr.Count);
        Response.Write("<HR>");
        foreach (object o in m)
        {
            Response.Write(o + "<br>");//我想叫这里依次输出上面四个国家的名字,但支意外的输出了四个System.Collections.ArrayList请问到底是为什么啊?
        }

解决方案 »

  1.   

    ArrayList.Repeat(arr,arr.Count)返回的ArrayList中有4个元素,每个元素又是一个ArrayList(arr),也就是一个由ArrayList组成的ArrayList。
      

  2.   

    这样就能输出16个值了:
    ArrayList arr = new ArrayList();
    arr.Add("中国");
    arr.Add("美国");
    arr.Add("日本");
    arr.Add("英国");foreach (object o in arr)
    {
    Response.Write(o + "<br>");
    }
    ArrayList m = ArrayList.Repeat(arr, arr.Count);
    Response.Write("<HR>");
    foreach (object o in m)
    {
    ArrayList temp = (ArrayList)o;
    foreach (object o2 in temp)
    {
    Response.Write(o2 + "<br>");
    }
    }
      

  3.   

    ArrayList m = ArrayList.Repeat(arr,arr.Count);
    ======
    1。
    我想问下 LZ ,你这里 repeat 的什么啊? 
    是 Repeat 了 arr.Count 个 arr (ArrayList) 对象2。
    自己应该看清除 ArrayList.Repeat 方法原型的说明