C#-非泛型集合的方法
非泛型集合的类和接口位于System.Collections命名空间
如:列表、队列、位数组、哈希表和字典的集合
ArrayList 动态数组
可被单独索引的对象的有序集合
可以使用索引在指定的位置添加和移除项目,动态数组会自动重新调整它的大小
允许在列表中进行动态内存分配、增加、搜索、排序
可以使用索引在指定的位置添加和移除项目,动态数组会自动重新调整它的大小
允许在列表中进行动态内存分配、增加、搜索、排序
Capacity:获取或设置可以包含的元素个数
Count:包含的元素个数
Item:获取或设置置顶索引处的元素
Add:末尾添加一个对象
Clear:移除所有的元素
Contains:判断元素是否在ArrayList中
GetRange(int index, int count):获取数组中的部分元素,返回的是ArrayList
Insert(int index, object value): 在指定索引处插入值
Remove:移除一个元素
RemoveAt(int index):移除指定索引处的元素
Reverse:将元素的顺序反转
Sort: 对Arraylist元素进行排序
Count:包含的元素个数
Item:获取或设置置顶索引处的元素
Add:末尾添加一个对象
Clear:移除所有的元素
Contains:判断元素是否在ArrayList中
GetRange(int index, int count):获取数组中的部分元素,返回的是ArrayList
Insert(int index, object value): 在指定索引处插入值
Remove:移除一个元素
RemoveAt(int index):移除指定索引处的元素
Reverse:将元素的顺序反转
Sort: 对Arraylist元素进行排序
Hashtable 哈希表
使用键来访问集合中的元素
哈希表中的每一项都有一个键/值对
哈希表中的每一项都有一个键/值对
Count:获取键值对个数
Item:获取或设置某键的值
Add:添加一直键值对
Clear:移除所有的元素
ContainsKey:是否包含某键
Remove:移除某键
Item:获取或设置某键的值
Add:添加一直键值对
Clear:移除所有的元素
ContainsKey:是否包含某键
Remove:移除某键
SortedList 排序列表
使用键和索引来访问列表中的项
排序列表是数组和哈希表的组合
使用索引访问各项,则它是一个动态数组
使用键访问各项,则它是一个哈希表
排序列表是数组和哈希表的组合
使用索引访问各项,则它是一个动态数组
使用键访问各项,则它是一个哈希表
Capacity:获取或设置sortedlist的容量
Count:获取元素个数
Add(object key, object value):添加一个元素
clear:移除所有元素
ContainsValue( object value):SortedList 是否包含指定的值
GetByIndex:获取指定索引出处的值
GetKey:获取指定索引处的键
GetKeyList:获取SortedList 中的键
GetValueList:获取 SortedList 中的值
Remove:移除指定索引处的元素
Count:获取元素个数
Add(object key, object value):添加一个元素
clear:移除所有元素
ContainsValue( object value):SortedList 是否包含指定的值
GetByIndex:获取指定索引出处的值
GetKey:获取指定索引处的键
GetKeyList:获取SortedList 中的键
GetValueList:获取 SortedList 中的值
Remove:移除指定索引处的元素
Stack 堆栈
后进先出
在列表中添加一项,称为推入元素
从列表中移除一项时,称为弹出元素
在列表中添加一项,称为推入元素
从列表中移除一项时,称为弹出元素
Count:获取元素个数
Clear:移除所有元素
Contains:是否包含某个元素
Peek:返回在stack的顶部的对象,但不移除
Pop:移除并返回到stack的顶部对象
Push:顶部添加一个对象
Clear:移除所有元素
Contains:是否包含某个元素
Peek:返回在stack的顶部的对象,但不移除
Pop:移除并返回到stack的顶部对象
Push:顶部添加一个对象
Queue 队列
先进先出
在列表中添加一项,称为入队
从列表中移除一项,称为出队
Count:获取元素个数
Clear:移除所有元素
Contains:是否包含某个元素
Dequeue:移除并返回到stack的顶部对象
Enqueue:末尾添加一个对象
Clear:移除所有元素
Contains:是否包含某个元素
Dequeue:移除并返回到stack的顶部对象
Enqueue:末尾添加一个对象
实例
1 using System; 2 using System.Collections; 3 4 //<summary> 5 //以stack 堆栈为例 6 //</summary> 7 namespace CollectionStack 8 { 9 class program 10 { 11 static void Main(string[] args) 12 { 13 Stack st = new Stack(); 14 15 // Push:顶部添加对象 16 st.Push("!"); 17 st.Push("WORLD"); 18 st.Push("HELLO"); 19 20 Console.Write("push后元素为:"); 21 foreach (string item in st) 22 { 23 Console.Write(item + " "); 24 } 25 Console.WriteLine(); 26 27 // Contains:是否包含某个元素 28 Console.WriteLine("st中包含WORLD:" + st.Contains("WORLD")); 29 Console.WriteLine("st中包含dear:" + st.Contains("dear")); 30 31 // Pop:移除并返回到stack的顶部对象 32 st.Pop(); 33 Console.Write("pop移除后元素为:"); 34 foreach (string item in st) 35 { 36 Console.Write(item + " "); 37 } 38 Console.WriteLine(); 39 Console.ReadKey(); 40 41 } 42 } 43 }
结果