如何在c#中创建一维动态数组?

时间:2010-04-20 15:16:39

标签: c# arrays dynamic

关于c#的noob问题:如何创建一维动态数组?以及如何改变它?

感谢。

5 个答案:

答案 0 :(得分:14)

您可以在C#中使用List<>对象,而不是使用数组。

List<int> integerList = new List<int>();

要迭代列表中包含的项目,请使用foreach运算符:

foreach(int i in integerList)
{
    // do stuff with i
}

您可以使用Add()Remove()函数在列表对象中添加项目。

for(int i = 0; i < 10; i++)
{
    integerList.Add(i);
}

integerList.Remove(6);
integerList.Remove(7);

您可以使用List<T>函数将ToArray()转换为数组:

int[] integerArray = integerList.ToArray();

以下是List<>对象上的documentation

答案 1 :(得分:3)

听起来你应该调查List<T>

答案 2 :(得分:1)

正如其他人所提到的,List<T>可能就是你想要的。但为了完整性,您可以使用Array.Resize静态方法调整数组大小。例如:

int[] array = { 1, 2, 3 };
Array.Resize(ref array, 4);

答案 3 :(得分:0)

使用:

ArrayList  //really you should avoid this.
or List<T>

所以

var my_list = new List<Your_List_Type_Here>() (Like List<String>);

这样添加你的方法就是:

my_list.Add(Your_Object);

链接到通用列表: http://msdn.microsoft.com/en-us/library/6sh2ey19.aspx

如果你想回到一个数组,那么只需调用ToArray()方法。

答案 4 :(得分:0)

阵列不是动态的。如果您想要动态使用'List<T>'或其他一些集合。您可以随时调用ToArray()方法来获取数组。