C# 队列Queue
2024-09-07 05:38:34
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();
Console.WriteLine(s);
///直接获得队列中的某个元素,
///如果索引越界,则会返回null,但不引发异常
Console.Write("获取队列中的第5个元素-----");
Console.WriteLine( strList.ElementAtOrDefault());
Console.Write("获取队列中的第1个元素-----");
Console.WriteLine(strList.ElementAtOrDefault()); ///取出最先入队的元素,但并不删除
string pop = strList.Dequeue();
Console.Write("取出队头的元素----");
Console.WriteLine(mes);
///遍历队列,为2个元素
Console.WriteLine("队列剩余元素为---");
foreach (var item in strList)
{
Console.WriteLine(item);
}
Console.ReadKey(); }
}
}
最新文章
- Leetcode Maximum Product Subarray
- 【转载】[C#]Log4net中的RollingFileAppender解析
- nyoj202_红黑树_中序遍历
- 修改eclipse中settings.xml和默认资源库保存地址
- Java后端书架
- 【转】maven导出项目依赖的jar包
- scheme 解释器Guile 使用
- Sftp和ftp 差别、工作原理等(汇总ing)
- Lists, Maps and Sets in Java
- 拖拽模块move1
- SQL、索引
- HMM隐马尔科夫算法(Hidden Markov Algorithm)初探
- dll加密工具
- hadoop HA学习
- Centos安装Python各版本解释器并配置pip
- vue 过渡效果
- 使用 Reachability 获取网络状态
- HBase系统入门--整体介绍
- 【CSS系列】布局篇
- java裁剪图片