欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#集合本質(zhì)之堆棧的用法詳解

 更新時(shí)間:2022年08月18日 08:39:51   作者:Darren?Ji  
本文詳細(xì)講解了C#集合本質(zhì)之堆棧的用法,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

在"了解集合本質(zhì)必須要知曉的概念-鏈表"中,我們了解了鏈表的概念和種類,并且模擬了一個(gè)單向鏈表。本篇體驗(yàn)的堆棧是約束版的鏈表,只能在棧頂接收新節(jié)點(diǎn)和釋放節(jié)點(diǎn)。

堆棧的主要操作是壓棧和出棧。壓棧是將新節(jié)點(diǎn)放在棧頂,出棧是從棧頂取出一個(gè)節(jié)點(diǎn),返回新彈出節(jié)點(diǎn)的數(shù)據(jù)項(xiàng)。堆棧也稱為后進(jìn)先出的數(shù)據(jù)結(jié)構(gòu)。

接著上一篇,寫一個(gè)派生于List的類來模擬堆棧的壓棧和出棧。

namespace LinkedListLibrary
{
    public class StackInheritance : List
    {
        public StackInheritance() : base("stack"){}
        public void Push(object dataValue)
        {
            InsertAtFront(dataValue);
        }
        public object Pop()
        {
            return RemoveFromFront();
        }
    }
}

客戶端調(diào)用。

        public static void Main(string[] args)
        {
            StackInheritance stack = new StackInheritance();
            bool aBoolean = true;
            char aChar = 'a';
            int anInt = 12;
            string aStr = "hello";
            stack.Push(aBoolean);
            stack.Display();
            stack.Push(aChar);
            stack.Display();
            stack.Push(anInt);
            stack.Display();
            stack.Push(aStr);
            stack.Display();
            try
            {
                while (true)
                {
                    object removedObject = stack.Pop();
                    Console.WriteLine(removedObject + "被彈出~~");
                    stack.Display();
                }
            }
            catch (EmptyListException emptyListException)
            {                
                Console.Error.WriteLine(emptyListException.StackTrace);
            }
            Console.ReadKey();
        }

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

相關(guān)文章

  • C#中的那些常用加密算法

    C#中的那些常用加密算法

    本文主要講解一下C#常用的那些加密算法,包括MD5加密、SHA1加密、Base64加密、Des加密、RSA加密等,需要的朋友可以參考下
    2020-11-11
  • Unity報(bào)錯(cuò)InvalidOperationException: out of sync的解決

    Unity報(bào)錯(cuò)InvalidOperationException: out of sync的解決

    今天在做個(gè)東西,發(fā)現(xiàn)報(bào)錯(cuò),特此來記錄一下,本文介紹了Unity報(bào)錯(cuò)InvalidOperationException: out of sync的解決,感興趣的可以了解一下
    2021-05-05
  • C#實(shí)現(xiàn)對(duì)AES加密和解密的方法

    C#實(shí)現(xiàn)對(duì)AES加密和解密的方法

    C#實(shí)現(xiàn)對(duì)AES加密和解密的方法,需要的朋友可以參考一下
    2013-04-04
  • 使用C#開發(fā)ActiveX控件

    使用C#開發(fā)ActiveX控件

    activex控件以前也叫做ole控件,它是微軟ie支持的一種軟件組件或?qū)ο螅梢詫⑵洳迦氲絯eb頁面中,實(shí)現(xiàn)在瀏覽器端執(zhí)行動(dòng)態(tài)程序功能,以增強(qiáng)瀏覽器端的動(dòng)態(tài)處理能力。通常activex控件都是用c++或vb語言開發(fā),本文介紹另一種方式,使用c#語言開發(fā)activex控件。
    2017-02-02
  • C#操作非持久化內(nèi)存映射文件詳解

    C#操作非持久化內(nèi)存映射文件詳解

    多個(gè)進(jìn)程之間,通過操作未映射到磁盤上現(xiàn)有文件的內(nèi)存映射文件,可以實(shí)現(xiàn)數(shù)據(jù)共享和類似進(jìn)程間通訊的功能,下面我們就來學(xué)習(xí)一下C#如何操作非持久化內(nèi)存映射文件的吧
    2023-12-12
  • C#訪問網(wǎng)絡(luò)共享文件夾的方法

    C#訪問網(wǎng)絡(luò)共享文件夾的方法

    這篇文章主要為大家詳細(xì)介紹了C#訪問網(wǎng)絡(luò)共享文件夾的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • C#實(shí)現(xiàn)同步模式下的端口映射程序

    C#實(shí)現(xiàn)同步模式下的端口映射程序

    這篇文章介紹了C#實(shí)現(xiàn)同步模式下的端口映射程序,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-06-06
  • C# 編碼好習(xí)慣,獻(xiàn)給所有熱愛c#的同志

    C# 編碼好習(xí)慣,獻(xiàn)給所有熱愛c#的同志

    c#編寫者,需要培養(yǎng)的一些好習(xí)慣
    2009-02-02
  • WinForm單例窗體用法實(shí)例

    WinForm單例窗體用法實(shí)例

    這篇文章主要介紹了WinForm單例窗體,結(jié)合實(shí)例形式分析了窗體的單例模式定義、實(shí)現(xiàn)與使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2016-07-07
  • 如何使用C#掃描并讀取圖片中的文字

    如何使用C#掃描并讀取圖片中的文字

    本文介紹如何通過C# 程序來掃描并讀取圖片中的文字,這里以創(chuàng)建一個(gè).Net Core程序?yàn)槔?。下面是具體步驟,供參考。有此需求的朋友可以了解下
    2021-06-06

最新評(píng)論