一、涉及到的知识点
1.queue类
c#中确实提供了队列类queue。队列是一种先进先出(fifo)的数据结构,用于存储和操作对象的有序集合。在c#中,可以使用system.collections.generic命名空间中的queue<t>类来实现队列。队列在按接收顺序存储消息方面非常有用,以便于进行顺序处理。queue类将队列作为循环数组实现,存储在queue类中的对象在一端插入,从另一端移除。
// 创建一个新的queue<int>实例 queue<int> queue = new queue<int>(); //或 // 创建一个新的queue<int>实例 queue<int> myqueue = new();
2.queue<t>类的方法和属性
queue<t>类提供了许多方法和属性,用于处理队列中的元素。以下是一些常用的方法:
- enqueue(t item):将元素添加到队列的末尾。
- dequeue():从队列的开头移除并返回元素。
- peek():查看队列开头的元素,但不将其移除。
- clear():移除队列中的所有元素。
- contains(t item):检查队列是否包含特定的元素。
- copyto(t[] array, int arrayindex):将队列中的元素复制到一个数组中。
- count:获取队列中元素的数量。
二、使用c# queue类的实例
这个实例演示了如何创建一个queue<int>实例,向其中添加元素,查看元素,从队列中移除元素,再次查看元素,向队列中添加新元素,查看队列开头的元素,清空队列,以及检查队列是否为空。
// 使用c# queue类的实例
namespace _134_1
{
class program
{
static void main(string[] args)
{
argumentnullexception.throwifnull(args);
// 创建一个新的queue<int>实例
queue<int> myqueue = new();
// 向队列中添加一些元素
myqueue.enqueue(1);
myqueue.enqueue(2);
myqueue.enqueue(3);
// 查看队列中的元素
console.writeline("队列中的元素:");
foreach (int element in myqueue)
{
console.write(element + " ");
}
// 从队列中移除并返回第一个元素
int dequeuedelement = myqueue.dequeue();
console.writeline("\n已移除的元素:{0}", dequeuedelement);
// 再次查看队列中的元素
console.writeline("\n队列中的元素(更新后):");
foreach (int element in myqueue)
{
console.write(element + " ");
}
// 添加一个新元素到队列
myqueue.enqueue(4);
// 再次查看队列中的元素
console.writeline("\n队列中的元素(更新后):");
foreach (int element in myqueue)
{
console.write(element + " ");
}
// 查看队列开头的元素
console.writeline("\n队列开头的元素:{0}", myqueue.peek());
// 清空队列
myqueue.clear();
// 查看队列是否为空
console.writeline("\n队列是否为空:{0}", myqueue.count == 0);
}
}
}
//运行结果:
/*
队列中的元素:
1 2 3
已移除的元素:1
队列中的元素(更新后):
2 3
队列中的元素(更新后):
2 3 4
队列开头的元素:2
队列是否为空:true
*/到此这篇关于c#使用queue<t>进行队列设计的文章就介绍到这了,更多相关c# queue<t>队列内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论