Anasayfa

C ve Sistem Programcıları Derneği

  • CSD Hakkında
    • Yönetim Kurulu
    • Referanslar
    • Üyelik
    • Adres
    • Kroki
    • İletişim
  • Kurslar
    • Kurs Başvurusu
    • Eğitmenler
  • Seminerler
    • Seminer İste
    • Seminer Ver
  • Kaynaklar
    • Yararlı Linkler
    • Kaynak Kod Arşivi
    • Makaleler
    • Çalışma Soruları
    • Yararlı Kitaplar
    • Dosya Arşivi
    • Döküman Arşivi
  • Duyurular
  • Haberler
  • İş İlanları
    • İş İlanı Gönder
  • SSS
  • Kurs Başvurusu

menü

  • CSD Hakkında
    • Yönetim Kurulu
    • Referanslar
    • Üyelik
    • Adres
    • Kroki
    • İletişim
  • Kurslar
    • Kurs Başvurusu
    • Eğitmenler
  • Seminerler
    • Seminer İste
    • Seminer Ver
  • Kaynaklar
    • Yararlı Linkler
    • Kaynak Kod Arşivi
    • Makaleler
    • Çalışma Soruları
    • Yararlı Kitaplar
    • Dosya Arşivi
    • Döküman Arşivi
  • Duyurular
  • Haberler
  • İş İlanları
    • İş İlanı Gönder
  • SSS
  • Kurs Başvurusu

e-posta ile bilgilendirme.

Derneğimizdeki etkinliklerden haberdar olun!

Haber mektubu üyeliğiniz

Kimler çevrimiçi

Şu an 0 kullanıcı ve 1 ziyaretçi çevrimiçi.
""
dreamhost
Anasayfa

ArrayList Sınıfı

06.05.2011 - 10:44 tarihinde aykut gönderdi

Aşağıda vermekte olduğum eğitimlerde ArrayList sınıfını anlatırken kullandığım benim tarafımdan yazılmış bir alternatif ArrayList sınıfı örneklenmiştir.

Ekleyen : Aykut TAŞDELEN

Kaynak kod: 
public class Liste
{
    private const int default_capacity = 4;
    private Object[] dizi;
    private int p = 0;
 
    public Liste()
    {
        dizi = new Object[default_capacity];
    }
 
    public Liste(int capacity)
    {
        dizi = new Object[capacity];
    }
 
    public void Ekle(Object elem)
    {
        try
        {
            dizi[p] = elem;
        }
        catch (IndexOutOfRangeException e)
        {
            Array.Resize(ref dizi, (dizi.Length * 2));
            dizi[p] = elem;
        }
        finally
        { 
            ++p;
        }
    }
 
    public int IndexVer(Object elem)
    {
        int i = 0;
        for (i = 0; i <= dizi.Length - 1; i++)
        {
            if (dizi[i] == elem)
            {
                break; 
            }
        }
        return i;
    }
 
    public bool Iceriyormu(Object elem)
    {
        bool flag = false;
        for (int  i = 0; i <= dizi.Length - 1; ++i)
        {
            if (dizi[i] == elem)
            {
                flag = true;
                break;
            }
        }
        return flag;        
    }
 
    public int ElemanSayisi
    {
        get
        {
            int t = 0;
            for (int i = 0; i <= dizi.Length - 1; ++i)
            {
                if (dizi[i] != null)
                    ++t;
            }
 
            return t;
        }
    }
 
    public int Kapasite
    {
        get
        {
            return  dizi.Length; 
        }
    }
 
    public int SonElemanIndeksi
    {
        get
        {
            return dizi.Length-1;
        }
    }
 
    public void Sil(int index)
    {
        Object[] tmp = new Object[dizi.Length-1];
        int s = 0;
 
        if (index < (dizi.Length - 1))
        {
            for (int i = 0; i <= dizi.Length - 1; ++i)
            {
                if (i != index)
                {
                    tmp[s] = dizi[i];
                    ++s;
                }
            }
        }
 
        dizi = new Object[tmp.Length];
 
        for (int i = 0; i <= tmp.Length - 1; ++i)
        {
            dizi[i] = tmp[i];
        }
 
    }
 
    public void Sil(object elem)
    {
        Sil( IndexVer(elem));
    }
 
    public void Yazdir()
    {
        for (int i = 0; i <= dizi.Length - 1; ++i)
        {
           if (dizi[i] != null)
                Console.WriteLine(dizi[i]);  
        }
    }
 
    public void Kirp()
    {
        int kirpilmisUzunluk = 0;
 
        for (int i = 0; i <= dizi.Length - 1; ++i)
        {
            if (dizi[i] != null)
                ++kirpilmisUzunluk; 
        }
 
        Object[] tmp = new Object[kirpilmisUzunluk];
 
        int t = 0;
 
        for (int i = 0; i <= dizi.Length - 1; ++i)
        {
            if (dizi[i] != null)
            {
                tmp[t++] = dizi[i];
            }
        }
 
        dizi = new Object[tmp.Length];
 
        for (int i = 0; i <= tmp.Length - 1; ++i)
        {
            dizi[i] = tmp[i];
        }
 
    }
 
}
  • Yazıcı uyumluYazıcı uyumlu
  • Arkadaşa gönderArkadaşa gönder
  • PDFPDF
Etiketler:
  • C#
  • ArrayList
  • List

Adres: 2.Taşocağı Cd. Oğuz Sk. Barbaros Apt. No: 11/4 PK: 34387  Mecidiyeköy / İSTANBUL Tel: (212) 274 63 60  (212) 274 99 89  (212) 275 88 97  (212) 288 35 20 Fax: (212) 275 88 97 E-Posta: csystem@csystem.org

İçerik yayınları
Fervens Drupal theme by Leow Kah Thong. Designed by Design Disease and brought to you by Smashing Magazine.