Bizler
verilerimizi Dequeue metodu ile çağırırız. Bu metod ile veri çağırdığımızda ilk
eklediğimiz veri getirilir yalnız sonrasında bu veri, veri kümesinden silinir.
Birde, bu metod bize object’in kendisini döndürür.
Bizler
sadece o veriyi çağırmak istiyorsak bu verinin veriler kümesinden silinmesini
istemiyorsak Peek metodunu kullanıyoruz. Bu bize sadece veriyi getirir.
Örnek:
Bir Queue sınıfından bir nesne oluşturuyoruz ve bu nesneye il isimleri
atıyoruz. Sonra bu eklediğimiz verileri çağırıyoruz.
Çözümü: private void Form1_Load(object sender, EventArgs e)
{
Queue illerimiz = new Queue();
illerimiz.Enqueue("adana");
illerimiz.Enqueue("ankara");
illerimiz.Enqueue("adıyaman");
MessageBox.Show(illerimiz.Dequeue().ToString());
MessageBox.Show(illerimiz.Dequeue().ToString());
MessageBox.Show(illerimiz.Dequeue().ToString());
//MessageBox.Show(illerimiz.Peek().ToString());
}
Kodun Açıklaması:
Queue
illerimiz = new Queue();
illerimiz.Enqueue("adana");
illerimiz.Enqueue("ankara");
illerimiz.Enqueue("adıyaman");
Öncelikle
Queue sınıfını kullanarak illerimiz adında bir nesne türetiyoruz. Sonra buna
veriler eklemek istiyoruz. Nesne_ismi.Enqueue metodunu kullanarak parantez
içinde verilerimizi object olarak ekliyoruz.
MessageBox.Show(illerimiz.Dequeue().ToString());
MessageBox.Show(illerimiz.Dequeue().ToString());
MessageBox.Show(illerimiz.Dequeue().ToString());
Verilerimizi
çağırmak için Dequeue metodunu kullanıyoruz. Bu metod object döndüreceği için
sonuna tostring metodu eklemek zorundayız. Mesaj kutusunda ilk veri “adana”
olacaktır. Çünkü queue sınıfının özelliği ilk eklediğimiz veri çağrılırken ilk
gelir mantığı var. Sonraki mesaj kutusunda ise “Ankara” gelir. Çünkü, çağrılan
ilk veri çağrıldıktan sonra silinir sıra baştaki ikinci veriye gelir. 3.mesaj
kutusunda ise “Adıyaman” ili gelir.
Ama
ben sadece verinin gelmesini veri topluluğundan silinmesini istemiyorsam peek
metodunu kullanıyorduk. Bunun kullanılması ise şöyle;
MessageBox.Show(illerimiz.Peek().ToString());
Bu bize sadece adana verisini getirir. Altına aynı kodu
bir daha yazarsak yine adana verisini getirir. Sebep peek metodu ile çağrılan
veri silinmez.
Hiç yorum yok :
Yorum Gönder