【前言】
以前我们在存储数据的时候,首先想到的是先声明一个数组。从学C#视频的时候,看到还可以用集合,那么集合和数组有什么区别吗?下面将为你展示。
【正文】
一、数组
定义:数组是相同数据类型的元素按一定顺序排列的集合。
优点:数组在存储数据的时候是连续存储的,因此可以快速而容易地从头到尾遍历元素,可以快速的修改元素等等。
缺点:在声明数组的时候必须先声明指定的长度。如果事先不知道存储的大小,很容易会造成声明的长度过长导致内存空间浪费,过短则造成数据的溢出。而且在两个数据中间插入数据也是非常麻烦的,需要将插入位置后面的数组全部移动位置。
二、集合(ArrayList)
定义:ArrayList是命名空间System.Collections下的一部分,它是使用大小可按需动态增加的数组实现IList接口。ArrayList的默认初始容量为0,随着元素添加到ArrayList中,容量会根据需要通过重新分配自动增加。
优点:ArrayList 可以根据使用大小按需动态增加,不用事先设置大小,可以随意的添加数据,插入或移除某一范围元素也比较方便。
缺点:因为ArrayList 插入值的类型都是当做Object 类型插入的,所以当调用数据的时候可能会出现类型不匹配的错误。
集合实例:
class Program
{
static void Main(string[] args)
{
ArrayList arrayList = new ArrayList();
arrayList.Add(10);
arrayList.Add(20);
arrayList.Add("张三");
arrayList.Add('女');
arrayList.Add(true);
arrayList.Add(3.15m);
arrayList.Add(78.9);
arrayList[5] = 5678;
for (int i = 0; i < arrayList.Count; i++)
{
Console.WriteLine(arrayList[i]);
}
Console.ReadKey();
}
}
显示结果:
由此我们看出集合虽然不用事先设置大小,可以随意的添加数据但是也有缺点。这时我们在存储数据的时候就可以根据自己的需求来定义了。