11 Haziran 2013 Salı

Arraylist



Birden fazla elimizde veri olduğu zaman biz bunları dizilerin içine atıp kullanabiliriz. Bazende bu verilerde oynamamız gerekebilir. Örneğin elimizdeki verilerden birini silmek istiyorum veya iki veri arasına bir veri yerleştirme ihtiyacı olabilir. Bunu dizilerle yapmaya kalktığımızda bu bizi biraz uğraştırır iken Arraylist olan koleksiyon sınıfları ile kolaylıkla yapabiliriz. Bu koleksiyon sınıfını kullanabilmemiz için using.System.Collections; namespace’ni eklememiz gerekiyor.
Örneğin; illerin isimlerini tutan bir dizimin olsun. Biz bu diziye sonradan bir il ismi ekleyelim, iki il ismi arasına bir il ismi ekleyelim ve index numarası belli bir ilimizi silelim. Bunları arraylist koleysiyon sınıflarını kullanarak yapalım.




Çözümü: private void Form1_Load(object sender, EventArgs e)
        {
            string[] iller = { "ankara", "adana", "antalya" };
            ArrayList illerimiz = new ArrayList();
            illerimiz.AddRange(iller);
            illerimiz.Add("afyon");
            illerimiz.Insert(0, "adıyaman");
            illerimiz.Remove("adana");
            illerimiz.RemoveAt(1);
            MessageBox.Show(illerimiz[1].ToString());
        }
     
Kod Açıklaması:  string[] iller = { "ankara", "adana", "antalya" };
İlleri tutan string tipinde bir dizi belirledik.
ArrayList illerimiz = new ArrayList();
Arraylist sınıfından illerimiz isminde bir sınıf türettik.
illerimiz.AddRange(iller); // dizinin elemanlarını tek tek bu sınıfa eklemektense arraylist sınıfında AddRange metodunu kullanarak dizinin tamamını eklemiş olduk.

illerimiz.Add("afyon");
//add metodu ile string tipindeki iller dizisini arraylist sınıfına eklemiştik. Bu add metodu ile afyon ismi dizinin son elemanı olarak ekler.
           
illerimiz.Insert(0, "adıyaman");
//insert metodu ile Adıyaman ismini 0. İndeksten sonra ekler. Bizim 0. İndeksimiz Ankara ismi oluyor. Yani Adıyaman ismini, Ankara isminden sonra ekliyor.
           
illerimiz.Remove("adana");
//Biz arrayliste tuttuğumuz bir diziden sileceğimiz verinin ismini yazarak remove metodu ile silebiliriz. Adana ismini diziden silmiş olduk.
           
illerimiz.RemoveAt(1);
//biz sadece arraylist’lerden verinin ismini yazarak değil aynı zamanda indeks numarasını yazarakta o veriyi diziden silmiş oluyoruz. Bunu removeat metodunda parantez içine indeks numarası yazarsak elde etmiş oluruz.

MessageBox.Show(illerimiz[1].ToString());
//peki mesaj kutusu arraylist’teki 1 nolu indeks numarası olan hangi veriyi getirir?
//dizimiz başlangıçta Ankara,adana,Antalya biz bu diziye add metodu ile dizinin en //sonuna afyon ilini ekledik. Sonra 0.indeksten sonra yani ankaradan sonra Adıyaman //ilini ekledik. Dizi şu şekilde oldu; Ankara,Adıyaman,adana,Antalya,afyon.
//sonra remove metodu ile adanayı sildik. Sonra 1. İndeks yani removeat metodu ile //adıyamanı sildik. Dizi şöyle oldu. Ankata,Antalya,afyon. Mesaj kutusunda 1. İndeksi çağırdık. Oda Antalya geliyor ekrana

Hiç yorum yok :

Yorum Gönder

Google PageRank Checker Powered by  MyPagerank.Net