CS4L11——泛型栈和队列

泛型栈和泛型队列

Stack<>​ 和 Queue<>​ 是 C# 为我们封装好的泛型容器,它们是 Stack​ 和 Queue​ 的泛型实现

使用 Stack<>​ 和 Queue<>​ 需要引用 System.Collections.Generic​ 这个命名空间

实例化一个 Stack<>​ 和 Queue<>​ 必须要指明它要装载什么类型的元素

1
2
3
4
5
6
7
8
9
10
using System.Collections.Generic;

class Program
{
static void Main(string[] args)
{
Stack<int> stack = new Stack<int>();
Queue<object> queue = new Queue<object>();
}
}

使用上 和之前的 Stack​ 和 Queue​ 一样,这里不再详细解释

Stack<> 关键字

1
2
3
4
5
6
7
8
Stack<>                //栈类,使用object存储所有值
stack<>.Push() //向栈压入值
stack<>.Pop() //从栈弹出值
stack<>.Peek() //查看栈顶部值,不弹出
stack<>.Contains() //栈是否存在某个元素
stack<>.Clear() //清空栈
stack<>.Count //栈的数量
stack<>.ToArray() //栈转换为数组

Queue<> 关键字

1
2
3
4
5
6
7
8
Queue<>                //队列
queue<>.Enqueue() //向队列内存储值
queue<>.Dequeue() //从队列内取出值
queue<>.Peek() //查看队列首位的值
queue<>.Contains() //检查值是否存在于队列内部
queue<>.Clear() //清空队列
queue<>.Count //队列的元素数量
queue<>.ToArray() //将队列转换为数组