C#中的常见集合类的比较

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#中的常见集合类的比较相关的知识,希望对你有一定的参考价值。

一、非泛型集合与泛型集合

非泛型集合:Array、ArrayList、HashTable、Queue、Statck、SortedList

泛型集合:List、Dictionary、Queue、Stack、SortedList

二、常见的集合类

Array、ArrayList、List

(一)Array:

即常见的数组形式,大小固定,命名空间为System

(二)ArrayList:

命名空间为System.Collection,是数组的复杂版本。ArrayList 类提供在大多数 Collections 类中提供,但不在 Array 类中提供的一些功能。

长度可变,使用add()等方法可以可以对ArrayList集合进行动态的增删操作。

ArrayList的元素类型属于对象类型,由于并未指出到底具体类型,所以在数据存储或者检索时,会发生装箱和拆箱的操作,引起系统消耗。

使用:

ArrayList arrayList1 = new ArrayList();
            arrayList1.Add("a");
            arrayList1.Add(1);
            arrayList1.Add("b");
            Response.Write(arrayList1[1]);

ArrayList拥有的方法:

1:Add()向数组中添加一个元素,
2:Remove()删除数组中的一个元素
3:RemoveAt(int i)删除数组中索引值为i的元素
4:Reverse()反转数组的元素
5:Sort()以从小到大的顺序排列数组的元素
6:Clone()复制一个数组

(三)List

即所谓的泛型集合,命名空间为System.Collections.Generic;使用方法与ArrayList类似,只是给出了具体的类型T,使用时无装箱拆箱操作,节约了内存

用法:

List<string> names = new List<string>();
names.Add("乔峰");
names.Add("欧阳峰");
names.Add("马蜂");
//遍历List
foreach (string name in names)
{
Console.WriteLine(name);
}
//向List中插入元素
names.Insert(2, "张三峰");
//移除指定元素
names.Remove("马蜂");

 

以上是关于C#中的常见集合类的比较的主要内容,如果未能解决你的问题,请参考以下文章

C#中的泛型和泛型集合

Alfred常见使用

编写高质量代码改善C#程序的157个建议——建议30:使用LINQ取代集合中的比较器和迭代器

一个队asp.net session进行了再次封装的C#类的代码

C#中this关键字的作用?能不能理解为引用类的对象,如一个引用集合中的某一部分,而不是整个集合。

C# 集合与泛型