首先,需要说明的是C#中的数组属于静态数组,即在声明数组时就必须确定数组的长度,而不能在程序运行时再动态更改数组的大小。但是,C#提供了一些其他的数据结构,例如ArrayList和List,可以实现动态数组的功能。下面是使用ArrayList和List的具体说明:
使用ArrayList
ArrayList是可以动态调整存储数据的容器,通过Add方法可以向其中添加元素,其大小会随之增加。以下是使用ArrayList的示例代码:
//声明一个ArrayList
ArrayList arrList = new ArrayList();
//往ArrayList中添加元素
arrList.Add("apple");
arrList.Add("orange");
arrList.Add("banana");
//往指定位置插入元素
arrList.Insert(1, "pear");
//获取指定位置的元素
Console.WriteLine(arrList[2]);
//通过foreach遍历ArrayList的元素
foreach (var item in arrList)
{
Console.WriteLine(item);
}
输出结果为:
banana
apple
pear
orange
banana
使用List
List类是ArrayList的泛型版本,相比于ArrayList来说更加性能高效(减少了装箱和拆箱的操作),同时也更加类型安全。以下是使用List的示例代码:
//声明一个List
List<string> fruitList = new List<string>();
//往List中添加元素
fruitList.Add("apple");
fruitList.Add("orange");
fruitList.Add("banana");
//往指定位置插入元素
fruitList.Insert(1, "pear");
//获取指定位置的元素
Console.WriteLine(fruitList[2]);
//通过for循环遍历List的元素
for (int i = 0; i < fruitList.Count; i++)
{
Console.WriteLine(fruitList[i]);
}
输出结果为:
banana
apple
pear
orange
banana
从上述示例可以看到,使用ArrayList和List都能够实现动态数组的功能,只不过List运行效率更高,在实际开发中建议优先使用List。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C# 没有动态的数组,可以用arraylist或list取代 - Python技术站