MeslekForum Mesleki Gelişim Forumu

Go Back   MeslekForum Mesleki Gelişim Forumu > Bilgisayar Yazılım Donanım > Programlama > C#

Cevapla
 
LinkBack Seçenekler Stil
Alt 12-10-2009, 21:15   #1 (permalink)
Kullanıcı Profili
SITE ADMİN
Taner - ait Kullanıcı Resmi (Avatar)
Kullanıcı Bilgileri
Üyelik Tarihi: Oct 2009
Üye No : 2
Mesajlar: 94
Standart ArrayList Sınıfı Nedir ?

Dinamik olarak büyüyüp küçülebilen yani çalışma esnasında eleman sayısı
değiştirilebilen diziler için kullanılır. Diğer dizilerden farklı olarak dizinin elemanları aynı
değişken türünden olmak zorunda değildir.

Örnek

Kod:
ArrayList kitaplar= new ArrayList( );
kod satırıyla kitaplar adlı esnek yapılı bir dizi tanımlanmıştır.

Dizi içindeki bir elemanı bulmak için [ ] operatörünün içine index numarası yazılıp
eleman bulunabilir.

ArrayList sınıfıyla bir dizi oluşturulduğunda dizinin eleman sayısı belirtilmemişse
varsayılan değeri 16’dır. Eleman sayısı 16’yı geçerse dizinin eleman sayısı otomatik olarak
32’ye yükseltilir.

Add Metodu()

ArrayList dizisine eleman eklemek için kullanılır. Eklenen eleman dizinin en sonuna
eklenir. ArrayList koleksiyonuyla bir dizi tanımlanırken mutlaka ilk değer verilmelidir.
Çünkü eklenen bu eleman, dizinin 0. indexini oluşturur (Zero-Based). Daha sonra eklenen
her eleman bir sonraki index numarasına sahip olur.

Örnek

ArrayList sınıfıyla kitaplar adında bir dizi oluşturarak Add() metoduyla 4 eleman
diziye aktarılmıştır. Aktarılan elemanlardan indis numarası 3 olan dizi elemanın mesaj
kutusunda gösteren program kodu aşağıda ve ekran görüntüsü de resim 2.14’te gösterilmiştir.





Resim 2.14: Belirtilen elemanın mesaj kutusunda gösterimi

Capacity Özelliği

ArrayList dizisinin mevcut boyutu öğrenilmek istendiğinde kullanılan özelliktir.
Kod:
MessageBox (kitaplar.Capacity);
Örnek

ArrayList ile oluşturulan ve elemanları başlangıçta diziye aktarılan kitaplar dizisinin
kapasitesi, butona tıklandığında metin kutusuna yazdırılmaktadır.


Program çalıştırıldığında ve “Kapasite göster” düğmesine tıklandığında ekran
görüntüleri resim 2.15’te gösterildiği gibidir.



Resim 2.15: ArrayList dizisinin kapasitesi

Insert () Metodu

ArrayList dizisinin belli bir konumuna eleman eklemek için kullanılır.
Kullanımı, dizi.Insert (no,eleman); şeklindedir.

Örnek
ArrayList sınıfıyla public olarak oluşturulan kitaplar dizisinin elemanları, form
yüklendiğinde diziye aktarılmakta ve aktarılan elemanlar da bir liste kutusunda
listelenmektedir. “Elemanı diziye ekle” düğmesine tıklandığında birinci metin kutusundan
girilen eleman adıyla, ikinci metin kutusundan girilen, elemanın dizide hangi konuma
ekleneceği belirten numarayla, Insert() metodu kullanılarak kitaplar dizisine eklenmektedir.
Dizinin son halini bir başka liste kutusunda listeleyen programın kod satırları şu şekildedir.



Program çalıştırıldığında formun tasarımı resim 2.16’daki olacaktır.



Diziye eklenecek eleman adı ve numarası girildikten sonra dizinin son hali resim
2.17’deki gibi olur.



Resim 2.17: Insert() metoduyla diziye yeni eleman ekleme

Count Özelliği

ArrayList dizisinin eleman sayısını verir.

Örnek
ArrayList sınıfıyla oluşturulan dizinin eleman sayısını bir butona tıklandığında mesaj
kutusuyla ekranda gösteren program kodu aşağıda ve ekran görüntüsü resim 2.18’deki gibi
olur.





Resim 2.18: Dizinin eleman sayısının mesaj kutusunda gösterilmesi

TrimToSize () Özelliği

Dizi için ayrılan bellek kapasitesinin gereksiz kullanımını önlemek için boş olan
alanların atılıp sadece eleman sayısı kadar alan tutmasını sağlar.

Örnek
Butona tıklandığında kitaplar dizisinin kapasitesini mesaj kutusunda gösteren program
kodu aşağıdadır. Dikkat edilmesi gereken nokta, bu kodda kitaplar. TrimToSize(); satırı
işletilmemiştir. Dizinin boyutunun trim edilmeden önceki hali size gösterilecektir.



Dizinin boyutunun otomatik olarak verildiği 16 rakamı ekranda gösterilir (Resim
2.19).



Resim 2.19: TrimToSize() metodu kullanılmadan önceki dizinin boyutu

İşletilmeyen kitaplar.TrimToSize(); satırının önündeki // karakterlerini silip projeyi
tekrar çalıştırdığınızda dizi boyutunun mevcut elemanlar kadar olduğunu göreceksiniz.


Dolayısıyla ekran görüntüsü resim 2.20’deki gibi olacaktır.


Resim 2.20: TrimToSize() metodu kullanıldıktan sonraki dizinin boyutu

Clear () Metodu

Dizideki bütün elemanları silmek için kullanılır.
Kullanımı kitaplar.Clear(); şeklindedir. Dolayısıyla diziye aktarılan tüm elemanlar
silinir.

Remove () Metodu

Bir elemanı diziden çıkarmak için kullanılan metottur. Numarasını verdiğiniz elemanı
diziden çıkarmak için ise RemoveAt () metodu kullanılır.

Örnek

ArrayList dizisiyle oluşturulan kitaplar dizisine ilk elemanları form yüklendiğinde
aktarılmakta ve diziye aktarılan elemanlar birinci liste kutusunda gösterilmektedir. Liste
kutusunda silmek istediğiniz bir elemanı seçip “Sil” düğmesine tıkladığınızda dizinin yeni
halini ikinci liste kutusunda listeleyen program kodu şu şekilde olur.


Proje çalıştırıldığında formun görüntüsü resim 2.21’de olduğu gibidir.



Resim 2.21: Projenin çalıştırılmış hali

Silinecek eleman seçilip “Sil” düğmesine tıklandığında dizinin yeni hali resim 2.22’
de gösterilmiştir.



Resim 2.22: Dizi elemanının RemoveAt() metoduyla silinmesi

IndexOf () Metodu
ArrayList dizisinde bir eleman aramak için kullanılan metottur. Bulma işlemi
gerçekleşirse geriye elemanın index numarası döner. Arama işlemini dizinin başından
itibaren değil de belli bir yerinden başlatmak isterseniz index numarasını verebilirsiniz.

dizi.IndexOf(eleman,başlangıç no);

Dizi elemanlarından belli aralıkta bulunanlarıyla arama yapmak istenirse;

dizi.IndexOf (eleman,başlangıç no, adet); şeklinde tanımlama yapılabilir.

Örnek
Metin kutusundan girilen bilgiye göre, “Ara” düğmesine tıklandığında dizi içerisinde
girilen bilgiyi arayan ve bilgiyi bulduğunda index numarasını yine bir başka metin kutusunda
gösteren program kodu aşağıdaki gibidir.


Proje çalıştırıldığında elde edilen ekran görüntüsü resim 2.23’te gösterilmiştir.


Resim 2.23: Dizi içerisinde eleman arama

Sort () Metodu

ArrayList diziyi sıralamak için kullanılan metottur.

Örnek

ArrayList kitaplar=new ArrayList(); şeklinde global olarak tanımlanan kitaplar
dizisinin sıralanmamış elemanları, diziye ve liste kutusuna form yüklendiğinde
aktarılmaktadır. “Sırala” düğmesine tıklandığında dizi elemanlarını alfabetik olarak sıralayıp
ikinci bir liste kutusunda listeleyen program kodu aşağıda olduğu gibidir.


Proje çalıştırıldığında ekran görüntüsü resim 2.24’teki gibidir.


Resim 2.24: Dizinin Sort() metoduyla sıralanmış hali

Reverse () Metodu

ArrayList diziyi ters çevirmek için kullanılan metottur. Dizinin bir bölümü ters
çevrilmek istenirse;

dizi.Reverse(ilk değer,adet); komut satırı yazılır.

Örnek

Arraylist dizisini ters çevirip ikinci bir liste kutusuna listeleyen program kodu şu
şekilde olur.


Resim 2.25’teki görünüm “Ters çevir” düğmesine tıklandıktan sonra dizinin ters
çevrilmiş halidir.


Resim 2.25: Dizinin ters çevrilmiş hali

Kaynak : MEGEP | Nesne Tabanlı Programlama 3

Örnek Uygulama : .net ArrayList Örneği
__________________
Beni Sevmek İçin Programlanma Devrelerini Yakarım !
Taner isimli Üye şimdilik offline konumundadır  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl this Post!Reddit! Wong this Post!
Alıntı ile Cevapla
Cevapla

Etiketler
add metodu() nedir nasıl kullanılır ?, arraylist fonksiyonları nedir nasıl kullanılır ?, capacity özelliği nedir nasıl kullanılır ?, clear () metodu nedir nasıl kullanılır ?, count özelliği nedir nasıl kullanılır ?, remove () metodu nedir nasıl kullanılır ?, reverse () metodu nedir nasıl kullanılır ?, sort () metodu nedir nasıl kullanılır ?, trimtosize () özelliği nedir nasıl kullanılır ?, ındexof () metodu nedir nasıl kullanılır ?, ınsert () metodu nedir nasıl kullanılır ?

Seçenekler
Stil

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Açık
Pingbacks are Açık
Refbacks are Açık



Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 17:00.


Powered by vBulletin
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.3.2

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30