Sponsor Reklam 


11.10.2008 (06:53)

 ArrayList Kullanımı 
Nesneleri bir dizi halinde saklamak isteyebiliriz. Tamamı String'ten oluşan nesneleri String dizisinde tutabiliriz fakat farklı türden nesneler için bir dizi nasıl tanımlayabiliriz?

Bununla ilgili şöyle bir çözümden bahsedebiliriz. Farklı nesneleri Object'e cast edip Object dizisinde tutabiliriz. Fakat bu durumda da nesneyi tekrar kullanabilmemiz için diziden çektikten sonra eski haline getirmemiz gerekir. Bu da demektir ki nesneyi diziye yerleştirirken bir de onun tipini saklamamız gerekmektedir.

Problem olacak olan bir nokta da, oluşturulan dizide dizinin herhangi bir yerine bir nesne eklemek istediğimizde veya herhangi bir yerindeki nesneyi silmek istediğimizde karşımıza çıkacaktır. for dönüsü ile diziyi ilgili indisten itibaren kaydırmamız gerekecektir. Yani yapmak istediğimi basit bir iş için fazlasıyla ilgilenmiş olacağız. İşte bu noktada ArrayList sınıfını kullanmak avantajımızadır.

ArrayList sınıfı ile kolayca nesneleri dizide saklar gibi saklayabilir, istediğimiz göze yerleştirebilir veya silme işlemleri yapabiliriz.

package kodcu.net;

import java.util.ArrayList;

public class ArrayListOrnek {

  private ArrayList al = new ArrayList();
  private String phone = "123456789";
  private String password = "1234";
  private Object ob = new Object();

  // Constructor
  public ArrayListOrnek() { }

  public void islemYap() {
    al.add("aaa");
    al.add(phone);
    al.add(ob);
    al.add(1, password);
    al.remove(3);
  }

}

Buradaki islemYap() metodunun çağrılmasından sonra diziye "aaa" eklenecektir. Bundan sonraki göze phone değişkenindeki bilgi eklenecektir. Sonraki göze ob nesnesi eklenecektir. Sonraki işlemler ise 1. göze password'ün araya sokulması (insert) ve 3. gözün silinmesi (delete) işlemleridir. Dizinin elemanları ve yerlerinin son hali şudur:

[0] : "aaa"
[1] : "1234"
[2] : "123456789"

Görüldüğü gibi ekleme, silme işlemleri kolayca yapılabilmektedir.
Imza: admin








Yazilar kaynak gosterilmeden kopyalanamaz © www.kodcu.net // Twitter