C#清空arraylist字符串数组,并将它们作为参数传递

本文关键字:参数传递 arraylist 清空 字符串 数组 | 更新日期: 2023-09-27 18:29:08

在我的winform应用程序中,我有一个包含动态数量字符串数组的arraylist。我需要以某种方式从数组列表中删除每个字符串数组,然后将这些字符串数组用作函数的参数。数组列表中的字符串数组的数量可以随着它们的动态创建而变化。

方法声明:

public void mychartbuilder(string[] Column1, string[] Column2 = null, string[] Column3 = null, string[] Column4 = null)

以下是最令人头疼的问题。由于列表中有一个动态数量的数组,我无法确定如何将它们提取出来,然后将它们作为参数发送到函数中。

foreach (string[] myarray in myArrayList)
    {
        string[] copy1 = new string[rcounter];
    }
mymethods.mychartbuilder(//string array parameters will go here)

提前谢谢。

C#清空arraylist字符串数组,并将它们作为参数传递

while(arrayList.Count < 4)
{
  arrayList.Add(null);
}
mychartbuilder((string[])arrayList[0], (string[])arrayList[1], (string[])arrayList[2], (string[])arrayList[3]);

请注意,可以使用List<string[]>而不是ArrayList来避免所有强制转换。

我认为您可以使用反射来调用它:http://msdn.microsoft.com/en-us/library/a89hcwhh.aspx

public Object Invoke(
Object obj,
Object[] parameters
)

调用将采用多个参数,您只需将ArrayList更改为Object[]