C#中的隊(duì)列Queue<T>與堆棧Stack<T>
一、概述:
Queue<T>隊(duì)列,對(duì)象的先進(jìn)先出集合(“FIFO”)。Stack<T>棧,對(duì)象的后進(jìn)先出集合(”LIFO”)。
Queue<T>、Stack<T>類似于List<T>,但 Queue<T>沒(méi)有IList<T>,所以不能用索引訪問(wèn)隊(duì)列。也沒(méi)有實(shí)現(xiàn)ICollection<T>,無(wú)Add,Remove等方法。
二、操作
1、入隊(duì)列:Enqueue()
Queue<string> nums = new Queue<string>();
nums.Enqueue("one");
nums.Enqueue("two");
nums.Enqueue("three");2、入棧:Push()
Stack<string> nums = new Stack<string>();
nums.Push("one");
nums.Push("two");
nums.Push("three");3、遍歷:隊(duì)列最先返回最先進(jìn)的,棧最先返回最后進(jìn)的元素。
foreach (var num in nums)//隊(duì)列依次返回,one,two,three ;棧依次返回:three,two,one,
{
Console.WriteLine(num);
}4、出隊(duì)列:Dequeue()返回最先進(jìn)的元素。
Console.WriteLine(nums.Dequeue());//one
5、出棧:Pop()返回最后進(jìn)的元素。
Console.WriteLine(nums.Pop());//three
6、返回開(kāi)始處的元素:Peek()
Console.WriteLine(nums.Peek());//two
7、判斷是否包含元素:Contains()
Console.WriteLine(nums.Contains("three"));8、清空隊(duì)列、棧:Clear()
nums.Clear();
9、隊(duì)列、棧中元素個(gè)數(shù):Count
Console.WriteLine(nums.Count);//0
10、復(fù)制到數(shù)組:CopyTo()、ToArray()
- CopyTo():把元素從隊(duì)列復(fù)制到一個(gè)已有的數(shù)組中。
- ToArray():返回一個(gè)包含隊(duì)列元素的新數(shù)組。
string[] arr=new string[3]; nums.CopyTo(arr,0); arr= nums.ToArray();
三、示意圖


以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
C#不重復(fù)輸出一個(gè)數(shù)組中所有元素的方法
這篇文章主要介紹了C#不重復(fù)輸出一個(gè)數(shù)組中所有元素的方法,涉及C#針對(duì)數(shù)組的遍歷、校驗(yàn)及排序等操作技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-08-08
C#通過(guò)經(jīng)緯度計(jì)算2個(gè)點(diǎn)之間距離的實(shí)現(xiàn)代碼
這篇文章主要介紹了C#通過(guò)經(jīng)緯度計(jì)算2個(gè)點(diǎn)之間距離實(shí)現(xiàn)代碼,本文對(duì)實(shí)現(xiàn)原理、經(jīng)緯度基本知識(shí)等一并做了講解,需要的朋友可以參考下2014-08-08
基于C#實(shí)現(xiàn)簡(jiǎn)單的音樂(lè)播放器
這篇文章主要介紹了如何基于C#實(shí)現(xiàn)簡(jiǎn)單的音樂(lè)播放器,考慮到需求中的界面友好和跨版本兼容性,我們可以選擇選擇Windows Forms作為開(kāi)發(fā)平臺(tái),Windows Forms提供了一個(gè)簡(jiǎn)單而強(qiáng)大的方法來(lái)創(chuàng)建桌面應(yīng)用程序,文中通過(guò)代碼示例給大家講解的非常詳細(xì),需要的朋友可以參考下2024-05-05
unity實(shí)現(xiàn)多點(diǎn)觸控代碼
這篇文章主要介紹了unity實(shí)現(xiàn)多點(diǎn)觸控代碼,我最近在學(xué)習(xí)Unity游戲引擎。先從Unity平面開(kāi)始,本章介紹Unity 平面上的多點(diǎn)觸摸。有需要的小伙伴參考下。2015-03-03
C#?漢字與拼音互轉(zhuǎn)的實(shí)現(xiàn)示例
本文主要介紹了C#?漢字與拼音互轉(zhuǎn)的實(shí)現(xiàn)示例,文中根據(jù)實(shí)例編碼詳細(xì)介紹的十分詳盡,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03

