当前位置:首页 > Windows程序 > 正文

C#高级编程四十九天

2021-03-29 Windows程序

System.Collections.Queue类表示对象的先进先出集合,存储在Queue(队列)中的对象在一端插入,从另一端移除.

2.优点

(1).能对集合进行顺序处理(先进先出)

(2)能接受null,并且允许重复的元素

3.Queue的构造器

构造器函数

 

注释

 

Queue()

 

初始化Queue类的新实例,该实例为空,具有默认初始容量(32)并使用默认增长因子(2.0)

 

Queue(ICollection)

 

初始化Queue类的新实例,该实例包含从指定集合复制的元素,具有与所复制的元素数相同的初始容量并使用默认增长因子

 

Queue(Int32)

 

初始化Queue类的新实例,该实例为空,具有指定的初始容量并使用默认增长因子

 

Queue(Int32,single)

 

初始化Queue类的新实例,该实例为空,具有指定的初始容量并使用指定的增长因子

 

4.Queue属性

属性名

 

注释

 

Count

 

获取Queue中包含的元素数

 

5.Queue的方法

方法名

 

注释

 

void Clear()

 

Queue中移除所有对象

 

bool Contains(object obj)

 

确定某元素是否在Queue

 

object Clone()

 

创建Queue的浅表副本

 

void CopyTo(Array array,int index)

 

从指定数组索引开始讲Queue元素复制到现有的以为Array

 

object Dequeue()

 

移除并返回位于Queue开始处的对象

 

void Enqueue()

 

将对象添加到Queue的结尾处

 

object Peek()

 

返回位于Queue开始处的对象但不将其移除

 

object[]ToArray()

 

Queue元素复制到新的数组

 

void TrimToSize()

 

将容量设置为Queue中元素的实际数目

 

6.Queue的使用案例

using System;

using System.Collections;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace 队列

{

class Program

{

static void Main(string[] args)

{

//创建一个队列

Queue myQ = new Queue();

myQ.Enqueue("The");//入队

myQ.Enqueue("quick");

myQ.Enqueue("brown");

myQ.Enqueue("fox");

myQ.Enqueue(null);//添加null

myQ.Enqueue("fox");//添加重复元素;

//打印队列的数量和值

Console.WriteLine("myQ");

Console.WriteLine("\tCount:     {0}",myQ.Count);

//打印队列中的所有值

Console.WriteLine("Queue Values");

PrintValues(myQ);

//打印队列中的第一个元素,并移除

Console.WriteLine("(Dequeue\t{0})", myQ.Dequeue()); 

//打印队列中的所有值

Console.WriteLine("Queue Values");

PrintValues(myQ);

//打印队列中的第一个元素

Console.WriteLine("(Peek)   \t{0}",myQ.Peek());

//打印队列中的所有值

Console.WriteLine("Queue Values");

PrintValues(myQ);

Console.ReadKey();

}

public static void PrintValues(IEnumerable myCollection)

{

foreach (object item in myCollection)

{

Console.WriteLine("    {0}",item);

}

Console.WriteLine();

}

}

}

7.备注

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/69417.html