在自身内复制arraylist值

时间:2009-04-10 07:07:49

标签: c#

考虑我有像这样的ArrayLists,

1){INT [],INT,INT []}
2){INT [],INT [],INT} 我有一个数,'n'。如果n是3那么我的arrayList应该是,

1){INT [],INT [],INT [],INT,INT [],INT [],INT []}

2){INT [],INT [],INT [],INT [],INT [],INT [],INT}

即新的ArrayList应该包含Array int []的'n'。

1 个答案:

答案 0 :(得分:1)

首先,你真的必须使用ArrayList吗?您在一个集合中持有不同类型的数据这一事实表明,可能有更好的方法来解决您的问题。无论如何,你可以做这样的事情:

public static ArrayList DuplicateIntArrays(ArrayList input, int copies)
{
    ArrayList ret = new ArrayList();
    foreach (object element in input)
    {
        if (element is int[])
        {
            for (int i=0; i < copies; i++)
            {
                ret.Add(element);
            }
        }            
        else
        {
            ret.Add(element);
        }
    }
    return ret;
}