1、简介
这个是c#封装的队列类型,同栈相反,这个是先进先出,一般用于事件注册,或者数据的按顺序处理,理解为需要排队处理的可以用队列来处理。注意,队列一定是有顺序的,先进确实是会先出,但是哈希结构就不一定是按照插入的顺序来进行的排序了,数组类型可以和下标挂钩。
由于需要头尾分开操作,因此他是一个循环数组。注意他的扩容并不相同,他的底层进行扩容是通过增长因子直接乘以容量得到,因此他会有一个容量裁剪的方法(参考ArrayList的裁剪方法)。
2、构造函数
这里只额外介绍一个最后一个构造函数,它可以指定队列容量的同时可以指定增长因子
3、属性
与stack相同,可以参考stack
4、方法
与stack相同,可以参考stack
备注:其实与Stack不同的是底层实现的数据结构不同,这个使用的是一个循环数组,也就是说他的扩容是根据增长因子,而不是简单的尾数据的index和size对比,如果count能够容纳这么的队列,那么只会存在指针循环