C# 队列Queue


using System;
using System.Collections.Generic;
using System.Linq;

namespace Queue测试
{
    class Program
    {
        static void Main(string[] args)
        {
            Queue<string> strList = new Queue<string>();
            ///向队列加入元素
            strList.Enqueue("元素1");
            strList.Enqueue("元素2");
            strList.Enqueue("元素3");
            ///遍历元素
            foreach (var item in strList)
            {
              Console.WriteLine(item);
            }
            ///队长长度
            Console.Write("队列长度---");
            Console.WriteLine(strList.Count);
            ////取出最先加进去的元素,并删除,充分体现队列的先进先出的特性
            ///如队列中无元素,则会引发异常
            //string mes = strList.Dequeue();
            //Console.WriteLine(mes);

            ///取出最先入队的元素,但并不删除
            string mes = strList.Peek();
            Console.Write("取出但不移除队头的元素----");
            Console.WriteLine(mes);
            ///遍历队列,仍为三个元素
            Console.WriteLine("队列剩余元素为---");
            foreach (var item in strList)
            {
              Console.WriteLine(item);
            }

            ///直接获得队列中的某个元素,
            ///如果索引越界,会引发异常
            Console.Write("获取队列中的第2个元素----");
            string s = strList.ElementAt(2);
            Console.WriteLine(s);
            ///直接获得队列中的某个元素,
            ///如果索引越界,则会返回null,但不引发异常
            Console.Write("获取队列中的第5个元素-----");
              Console.WriteLine( strList.ElementAtOrDefault(5));
              Console.Write("获取队列中的第1个元素-----");
              Console.WriteLine(strList.ElementAtOrDefault(1));

              ///取出最先入队的元素,但并不删除
              string pop = strList.Dequeue();
              Console.Write("取出队头的元素----");
              Console.WriteLine(mes);
              ///遍历队列,为2个元素
              Console.WriteLine("队列剩余元素为---");
              foreach (var item in strList)
              {
                  Console.WriteLine(item);
              }
              Console.ReadKey();
  
        }
    }
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM