C#内置队列类Queue用法实例

C#内置队列类Queue用法实例

本文将详细讲解C#内置队列类Queue的用法,包括如何创建队列、添加元素、删除元素、获取队列中元素数量等操作。

创建和初始化队列

在C#中,可以使用Queue类来创建一个队列。T代表存储在队列中的元素类型。我们可以在创建队列的同时指定元素类型,也可以在后续操作中动态添加元素类型。下面是一个创建包含整数的队列的示例:

Queue<int> queue = new Queue<int>();

向队列中添加元素

在创建队列后,我们可以使用Enqueue方法向队列中添加元素。比如,我们想向创建的整数队列中添加5个元素,可以按照以下方式进行操作:

Queue<int> queue = new Queue<int>();
queue.Enqueue(1);
queue.Enqueue(2);
queue.Enqueue(3);
queue.Enqueue(4);
queue.Enqueue(5);

从队列中删除元素

队列的基本操作包括添加和删除元素。Dequeue方法可以从队列的“前端”(队头)删除元素,并返回该元素。比如,我们想从队列中删除第一个元素,可以采用以下方式:

int firstElement = queue.Dequeue();

获取队列中的元素数量

可以使用Count属性获取队列中元素的数量。比如,我们可以使用以下代码输出队列中的元素数量:

Console.WriteLine(queue.Count);

现在,我们来看一个完整的代码示例,演示如何向队列中添加元素、删除元素和获取队列中的元素数量:

using System;
using System.Collections.Generic;

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

        // 添加元素
        queue.Enqueue(1);
        queue.Enqueue(2);
        queue.Enqueue(3);

        // 获取元素数量
        Console.WriteLine("队列中元素的数量为:" + queue.Count);

        // 删除元素
        int firstElement = queue.Dequeue();
        Console.WriteLine("删除了队头元素,其值为:" + firstElement);

        // 再次获取元素数量
        Console.WriteLine("删除队头元素后,队列中元素数量为:" + queue.Count);
    }
}

以上代码执行结果为:

队列中元素的数量为:3
删除了队头元素,其值为:1
删除队头元素后,队列中元素数量为:2

示例说明

示例一

下面的代码演示了如何创建包含字符串类型的队列,并在队列中添加3个元素,然后从队列中逐个删除输出元素:

Queue<string> queue = new Queue<string>();

queue.Enqueue("hello");
queue.Enqueue("world");
queue.Enqueue("!");

while (queue.Count > 0)
{
    string element = queue.Dequeue();
    Console.WriteLine(element);
}

以上代码执行结果为:

hello
world
!

示例二

下面的代码演示如何创建包含自定义类Car的队列,并在队列中添加3个元素,使用Dequeue方法从队列中删除输出元素:

class Car
{
    public string Brand { get; set; }
    public string Model { get; set; }
}

Queue<Car> queue = new Queue<Car>();

queue.Enqueue(new Car { Brand = "奥迪", Model = "A4L" });
queue.Enqueue(new Car { Brand = "宝马", Model = "X3" });
queue.Enqueue(new Car { Brand = "奔驰", Model = "GLE" });

while (queue.Count > 0)
{
    Car car = queue.Dequeue();
    Console.WriteLine("品牌:" + car.Brand + ",型号:" + car.Model);
}

以上代码执行结果为:

品牌:奥迪,型号:A4L
品牌:宝马,型号:X3
品牌:奔驰,型号:GLE

以上是C#内置队列类Queue的用法实例的详细攻略。您可以在自己的代码中使用这些操作,来进行队列的创建、添加、删除和数量获取等基本操作。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#内置队列类Queue用法实例 - Python技术站

(0)
上一篇 2023年6月7日
下一篇 2023年6月7日

相关文章

  • asp.net GridView 删除时弹出确认对话框(包括内容提示)

    下面是关于“asp.net GridView 删除时弹出确认对话框(包括内容提示)”的完整攻略: 一、需求 我们需要在一个asp.net GridView中删除数据时,弹出确认对话框,同时包含内容提示,确保用户明确知道正在进行的操作。 二、实现步骤 1.在GridView中添加删除按钮。 在GridView的模板列中,添加一个“删除”按钮,并设置Comman…

    C# 2023年6月1日
    00
  • C#队列的简单使用

    C#队列的简单使用 队列是计算机科学中经典的数据结构,它具有先进先出的特点,即先被放入队列的数据将会先被取出。在C#语言中,可以通过使用Queue类来操作队列。在本文中,我们将讲述如何使用C#队列,包括创建队列,添加元素,获取元素,以及判断队列是否为空等操作。 创建队列 在C#中,可以通过以下方式来声明和初始化一个队列: Queue<int> m…

    C# 2023年6月6日
    00
  • CommunityToolkit.Mvvm8.1 消息通知(4)

    本系列文章导航 https://www.cnblogs.com/aierong/p/17300066.html https://github.com/aierong/WpfDemo (自我Demo地址)   希望提到的知识对您有所提示,同时欢迎交流和指正 作者:aierong出处:https://www.cnblogs.com/aierong   说明 为了…

    C# 2023年4月17日
    00
  • C# 枚举类型的声明和使用

    C# 中的枚举类型是一种表示数值的特殊类型,在实际开发中有着广泛的应用。以下是C# 枚举类型的声明和使用的攻略: 什么是枚举类型? 枚举类型是一种值类型,用于定义命名的常量集合。枚举中的每个命名常量都有一个相关联的值。与整数不同,枚举值可以显式或隐式地分配给命名常量。也就是说,枚举类型是一种有限制的情况下,对整数的封装。枚举类型可以将整数类型的数据值作为名称…

    C# 2023年6月1日
    00
  • C# Linq的SkipWhile()方法 – 跳过序列中的元素,直到某个元素不满足

    下面是关于 C# Linq 的 SkipWhile() 的完整攻略。 SkipWhile() 简介 SkipWhile() 方法是 C# Linq 中的一种用来过滤序列的方法,其参数为一个带有一个参数和一个返回bool类型的委托,该委托定义了决定跳过哪些元素的方法。SkipWhile() 方法会跳过序列中开头符合条件的元素,直到遇到第一个不符合条件的元素为止…

    C# 2023年4月19日
    00
  • C#(.net)中按字节数截取字符串最后出现乱码问题的解决

    标题:C#(.NET)中按字节数截取字符串最后出现乱码问题的解决 问题描述 在C#(.NET)中,我们经常会遇到需要按字节数来截取字符串的情况,比如截取标题等场景。然而,对于一些非ASCII字符,它们的字节数并不是1,这就导致按字节数截取字符串时会出现乱码问题。尤其是最后一个字符被截断时,更容易出现这种情况。该怎样解决这个问题呢? 解决方法 我们可以利用.N…

    C# 2023年6月8日
    00
  • 如何在C# 中查找或结束程序域中的主、子进程

    如何在C# 中查找或结束程序域中的主、子进程 在C#中可以使用Process类来查找、启动和结束进程。Process类封装了与操作系统进程相关的一些API,并提供了简便的方法来管理和控制进程。以下是有关如何在C#中查找或结束程序域中主、子进程的攻略: 查找主进程 首先,我们要通过获取当前进程的进程ID,来查找主进程。在C#中,可以使用 Process.Get…

    C# 2023年6月6日
    00
  • C#中的那些常用加密算法

    当涉及到信息安全时,加密是必不可少的一个环节。在C#中,有许多不同的加密算法,如对称加密算法(如DES、3DES、AES)、非对称加密算法(如RSA)、摘要算法(如MD5、SHA256)等等。接下来我们分别探究这些算法的使用方法。 对称加密算法 对称加密算法使用同一把密钥用于加密和解密信息。因此,密钥的保护尤为重要。 DES加密算法 DES全称为数据加密标准…

    C# 2023年6月6日
    00
合作推广
合作推广
分享本页
返回顶部