最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#自定義的方法實(shí)現(xiàn)堆棧類設(shè)計(jì)

 更新時(shí)間:2024年03月07日 08:53:17   作者:wenchm  
這篇文章主要為大家詳細(xì)介紹了如何使用C#創(chuàng)建一個(gè)帶有Push方法和Clist類的CStack類,并如何在其中添加和遍歷堆棧數(shù)據(jù),感興趣的可以了解下

本實(shí)例展示了如何使用C#創(chuàng)建一個(gè)帶有Push方法和Clist類的CStack類,并如何在其中添加和遍歷堆棧數(shù)據(jù)。

1.首先創(chuàng)建一個(gè)名為Clist的類

這是堆棧實(shí)現(xiàn)的基礎(chǔ)。有兩處注意的:

應(yīng)使用List<T>.RemoveAt(Int32) 方法而不是List<T>.Remove(T) 方法,否則,后期生成的Pop方法是不起作用的。

為了實(shí)現(xiàn)堆棧的LIFO特性,遍歷輸出Display()方法應(yīng)選擇反向遍歷輸出。

public class Clist
{
    private readonly List<int>? myList;
 
    public Clist()
    {
        myList = [];
    }
 
    public void Add(int item)
    {
        myList!.Add(item);
    }
 
    public void RemoveAt(int item)
    {
        myList!.RemoveAt(item);
    }
 
    public void Clear()
    {
        myList!.Clear();
    }
 
    public int Count()
    {
        return myList!.Count;
    }
 
    public void Display()
    {
        for (int i = myList!.Count - 1; i >= 0; i--)
        {
            int item = myList[i];
            Console.Write(item + " ");
        }
        Console.WriteLine();
    }
}

2.接下來(lái)創(chuàng)建一個(gè)名為CStack的類

它將使用Clist類的實(shí)例來(lái)實(shí)現(xiàn)堆棧。

 public class CStack
 {
     private readonly Clist mylist;
 
     public CStack()
     {
         mylist = new Clist();
     }
 
     public void Push(int item)
     {
         mylist.Add(item);
     }
 
     public void Pop()
     {
         mylist.RemoveAt(mylist.Count() - 1);
     }
 
     public int Count()
     {
         return mylist.Count();
     }
 
     public void Display()
     {
         mylist.Display();
     }
 }

3.最后使用CStack類和Push方法來(lái)添加和遍歷堆棧數(shù)據(jù)

class Program
{
    static void Main(string[] args)
    {
        ArgumentNullException.ThrowIfNull(args);
 
        CStack stack = new();
 
        stack.Push(10);
        stack.Push(20);
        stack.Push(30);
        Console.WriteLine("堆棧數(shù)量={0}", stack.Count());
        stack.Display(); // 輸出:30 20 10
 
        stack.Pop();
        stack.Pop();
        Console.WriteLine("堆棧數(shù)量= {0}", stack.Count());
        stack.Display(); // 輸出:10
    }
}

4.運(yùn)行結(jié)果

把上面3個(gè)類,放進(jìn)一個(gè)命名空間,運(yùn)行結(jié)果:

運(yùn)行結(jié)果:

堆棧數(shù)量=3
30 20 10
堆棧數(shù)量= 1
10

到此這篇關(guān)于C#自定義的方法實(shí)現(xiàn)堆棧類設(shè)計(jì)的文章就介紹到這了,更多相關(guān)C#堆棧類設(shè)計(jì)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

邳州市| 小金县| 阜新市| 根河市| 英德市| 陕西省| 广元市| 昭苏县| 大连市| 土默特左旗| 新营市| 方山县| 北辰区| 民和| 青冈县| 钟祥市| 方城县| 湘乡市| 淮安市| 阿拉善盟| 玉门市| 黄平县| 都江堰市| 白朗县| 泗水县| 东平县| 拉萨市| 凤山县| 永泰县| 西贡区| 那坡县| 历史| 常德市| 金秀| 晋宁县| 灌南县| 滨州市| 古浪县| 光泽县| 大新县| 陆良县|