IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası
  reklamver

Etiketlenen Kullanıcılar

Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 10 Nisan 2012, 15:49   #1
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Javada Vector ve ArrayList Performans Karsilastirmasi




Javada, Vector ve ArrayList arasındaki farkın ne olduğunu sorulduğunda, genel olarak şunları söyleriz
Vector’un thread-safe‘dir.
Vector kapasitesi 2 kat artacak şekildedir (eğer capacityIncrement değeri verilmediyse).
ArrayList her seferinde kapasitesinin yarısı kadar ( %50) kapasitesini artırır.
Herikisi de öntanımlı olarak 10 element saklayabilecek şekilde ilklenir.
Burada¬† en çok Vector’un thread-safe özelliği öne çıkar. Yani Vector; ArrayList e göre, içindeki verinin doğruluğunu garanti eder. Hız olarak nasıl bir etkisi olduğuna ise inceleyelim.
Peki vector ve ArrayList performans olarak nasıl bir farkı vardır.
Performans karşılaştırılmasında 100.000 tane rastgele oluşturulmuş sayılar eklenip, işlem yapılmaktadır.
Ekleme İşlemi
Vector ve ArrayList e rastgele oluşturulmuş 100.000 element ekleniyor.

PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
IList<IntegervectorList = new IntegerVectorListImpl();
 
IList<IntegerarrayList = new IntegerArrayListImpl();
 List<
IntegerrandomIntegers getRandomIntegers(100000);
 
long start,end;  
write("Start for inserting ARRAYLIST");
 
start System.currentTimeMillis();
 for(
Integer i randomIntegersarrayList.insert(i); 
end System.currentTimeMillis();
 
long differenceOfArrayList end -¬† start
write("ArrayList time difference :" differenceOfArrayList " ms"); write("End for inserting ARRAYLIST"); 
write("Start for inserting VECTOR"); 
start System.currentTimeMillis();
 for(
Integer i randomIntegersvectorList.insert(i);
 
end System.currentTimeMillis(); 
long differenceOfVector end -¬† start
write("Vector time difference :" differenceOfVector " ms");
 
write("End for inserting VECTOR"); 

Bu test işlemi sonucunda alınan değerler şu şekilde.
En İyi Değeri En Kötü Değeri Ortalama
Vector 29 58 36.45
ArrayList 17 30 24.9

Görüldüğü gibi ArrayList ekleme işlemlerinde daha hızlı çalışıyor.
Arama İşlemi
Bir üstteki örnekte olduğu gibi, 100.000 kayıt eklenerek, bu kayıtlar içinden bir değer aranıyor.
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
IList<Integer>; vectorList = new IntegerVectorListImpl(); IList<Integer> arrayList = new IntegerArrayListImpl(); List<Integer> randomIntegers = getRandomIntegers(100000); long start,end; for(Integer i : randomIntegers) arrayList.insert(i); for(Integer i : randomIntegers) vectorList.insert(i); Integer findObj =  777; write("Start for search ARRAYLIST"); start = System.currentTimeMillis(); arrayList.search(findObj); end = System.currentTimeMillis(); long differenceOfArrayList = end -  start; write("ArrayList time difference :" + differenceOfArrayList + " ms"); write("End for search ARRAYLIST"); write("Start for search VECTOR"); start = System.currentTimeMillis(); vectorList.search(findObj); end = System.currentTimeMillis(); long differenceOfVector = end -  start; write("Vector time difference :" + differenceOfVector + " ms"); write("End for search VECTOR");

Bununla ilgili sonuc şu şekilde:
En İyi Değeri En Kötü Değeri Ortalama
Vector 6 9 7.6
ArrayList 6 13 7.4

Görüldüğü gibi ArrayList vector den cok az daha hızlı arama işlemi yapabiliyor sunuz.
Sonuç Olarak
Sonuç olarak ise Vector thread-safe özelliğinden dolayı daha güvenli olduğu halde biraz yavaş çalışmaktadır. ArrayList ise daha hızlı olup, multi-thread uygulamalarda verinin doğruluğunu garanti edememektedir.



[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]


Konu YazılımMimarı tarafından (17 Şubat 2013 Saat 20:01 ) değiştirilmiştir.
 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları eglen sohbet reklamver
Alt 10 Nisan 2012, 15:53   #2
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Javada Vector ve ArrayList Performans Karsilastirmasi




Kodlari daha anlaşilir taglarla eklesen daha iyiydi.

 
Alıntı ile Cevapla

Alt 10 Nisan 2012, 16:03   #3
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Javada Vector ve ArrayList Performans Karsilastirmasi




Düzeltildi.

 
Alıntı ile Cevapla

Cevapla

Etiketler
arraylist, javada, karsilastirmasi, performans, ve, vector


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 

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 Kapalı
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
Arraylist Kullanımı SeckiN C# 0 04 Kasım 2014 15:47
Javada Polygon ve Polyline Swat Java 0 03 Temmuz 2014 12:33
C# ArrayList Örnekleri Sunay C# 0 24 Nisan 2010 01:47
Javada Belirli Aralıklarda Sayfa Yenileme.. toXic Java 0 11 Mart 2010 19:21
Javada Metotlar toXic Java 0 07 Mart 2010 14:57