İçeriğe geç

Stack Sınıfı

Stack sınıfı ICollection, IEnumerable ve ICloneable arayüzlerini uygulamaktadır. Bundan dolayı ArrayList sınıfında kullandığımız metotları bu sınıf içinde de kullanabilmekteyiz. Ancak buradaki mantığımız "son giren ilk çıkar" yani LIFO.

Stack nesnesi hazırlarken kapasiteyi parametre olarak verebilirsiniz. Şimdi aşağıdaki koda bakalım ve anlamaya çalışalım...

using System;
using System.Collections;

namespace ConsoleApp2
{
    class Program
    {
        static void Main(string[] args)
        {
            Stack s1 = new Stack(4);
            s1.Push("Galatasaray");
            s1.Push("Fenerbahçe");
            s1.Push("Beşiktaş");
            s1.Push("Bursaspor");

            Console.WriteLine(s1.Count);
            Console.WriteLine(s1.Pop());
            Console.WriteLine(s1.Count);

        }
    }
}
4
Bursaspor
3
Press any key to continue . . .

Görüldüğü üzere Push() metodu ile içerisine eleman eklenebiliyor ve Pop() ile son eleman okunabiliyor. Ancak Pop() metodu işletildiğinde işlenen eleman Stack'ten çıkartılıyor ve eleman sayısı bir eksiliyor.
Eleman sayısı eksilmeden gösteri yapmak isterseniz Peek() metodunu kullanabilirsiniz. Ancak bu sefer index imleci sabit kalır.

            Stack s1 = new Stack(4);
            s1.Push("Galatasaray");
            s1.Push("Fenerbahçe");
            s1.Push("Beşiktaş");
            s1.Push("Bursaspor");

            Console.WriteLine(s1.Count);
            Console.WriteLine(s1.Peek());
            Console.WriteLine(s1.Count);
            Console.WriteLine(s1.Peek());
4
Bursaspor
4
Bursaspor

Bütün Stack'i temizlemek için Clear() metodu kullanılabilir.

Kategori:C Sharp

İlk Yorumu Siz Yapın

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir