C# Stack使用

C# Stack使用

使用场合

如果总想使用最近存储的对象,使用Stack(栈),例如:
- 放在卡车后面的家具
- 一摞书想看最近增加的书

和List相比Queue的特点

  • 不能按任意索引增加或删除项
  • 增加对象时要压入(push)
  • 删除对象时要弹出(pop)

代码示例

using System;
using System.Collections.Generic;

namespace 栈
{
    internal class Program
    {
        private static void Main()
        {
            var myQueue = new Stack<string>();
            myQueue.Push("first in line");//对象入栈
            myQueue.Push("second in line");
            myQueue.Push("third in line");
            myQueue.Push("last in line");
            var takeALook = myQueue.Peek();//获取栈顶的对象,但是不删除改对象
            var getFirst = myQueue.Pop();//获取栈顶的对象,然后删除队列中改对象
            var getNext = myQueue.Pop();
            var howMany = myQueue.Count;//获取栈中元素个数
            myQueue.Clear();//清空栈中的对象
            Console.WriteLine("Peek() return: {0}" + Environment.NewLine +
                "first Pop return: {1}" + Environment.NewLine +
                "second Pop return: {2}" + Environment.NewLine +
                "two Pop  return count: {3}" + Environment.NewLine,
                takeALook, getFirst, getNext, howMany);
            Console.ReadKey();
        }
    }
}

posted on 2017-09-23 09:55  五月槐花  阅读(280)  评论(0)    收藏  举报

导航