Linq İle Skip Metodu Kullanımı


4 Ağustos 2014 Hikmet Okumuş Linq & Lambda

Skip metodu, bir koleksiyonda parametre ile girilen miktar kadar kaydı, 1. satırdan başlamak üzere atlamak için kullanılmaktadır. Parametre değerinden sonraki satırlar IEnumerable list olarak geri döndürülmektedir. Metod int tipinde parametre almaktadır.
    public class Kisi
    {
        public Kisi() { }
        public Kisi(string Ad, int Yas, bool Durum)
        {
            this.Ad = Ad;
            this.Yas = Yas;
            this.Durum = Durum;
        }

        public string Ad { get; set; }
        public int Yas { get; set; }
        public bool Durum { get; set; }
    }
        static void Main(string[] args)
        {
            List< Kisi> Kisiler = new List< Kisi>();
            Kisiler.Add(new Kisi("Ali", 15, true));
            Kisiler.Add(new Kisi("Can", 22, true));
            Kisiler.Add(new Kisi("Hakan", 19, false));
            Kisiler.Add(new Kisi("Yılmaz", 41, true));
            Kisiler.Add(new Kisi("Ahmet", 25, true));
            Kisiler.Add(new Kisi("Veli", 17, true));

            var sonuc = Kisiler.Skip(3);

            foreach (var kisi in sonuc)
            {
                Console.WriteLine(kisi.Ad);
            }

            Console.Read();
        }

www.hikmetokumus.com

Ekran çıktısı aşağıdaki gibidir.

www.hikmetokumus.com

Metod 3 tane kaydı atladı ve sonraki kayıtları geri döndürdü.
Eğer Skip metoduna parametre olarak koleksiyon içerisinde bulunan eleman sayısı kadar ya da daha fazla değer verilirse metod geriye IEnumerable tipinde boş bir liste döndürmektedir.

www.hikmetokumus.com

Örnekte parametre olarak 6 değerini girdim. Bu değer koleksiyonun eleman sayısına eşittir. Yani geriye 0 adet kayıt dönecektir.

www.hikmetokumus.com

Bu durumda Skip metodu yukarıda bulunan Count alanında bir hesaplama yapıyor. Hesaplama işlemini sadece geriye kayıt dönmediği durumlarda yapmaktadır. Aşağıdaki örnekte daha net anlaşılacaktır.

www.hikmetokumus.com

Koleksiyon içerisinde bulunan kayıt sayısı 6, Skip metodunda belirtilen parametre değeri 9 dur. Metod geriye parametrede, liste eleman sayısından 3 adet fazla değer belirttiğimizi söylemektedir.
Az öncede belirttiğim gibi eğer geriye bir değer dönüyorsa, Count alanında bir hesaplama yapılmaz. Source alanı ise Skip metodunun çalıştırıldığı koleksiyon bilgisini her durumda vermektedir.
Metodun mantığı aslında çok kısadır. Detaylar ile konuyu biraz uzattım.

Başarılar dilerim.



Kullanıcı Yorumları

hikmet okumuş makale yorum
Eymen Altıntaş
8/4/2014 11:34:38 PM

Hocam makaleleriniz çok faydalı başarılarınızın devamını dilerim.



Yorum Ekle