SORU
8 Mart 2011, Salı


Java: İyi bir topluluk içinde yineleme (burada ArrayList)yolu

Bugün mutlu bir kod parçası buldum zaten yüzlerce kez kullanıldığında: uzak kodlama yapıyordum

Koleksiyonu (burada ArrayList) yineleme

nedense ben aslında Eclipse otomatik tamamlama seçenekleri baktı ve beni merak var:

Aşağıdaki durumlarda döngüler diğerlerinden daha kullanmak daha iyi

klasik dizi dizini döngü:

for (int i = 0; i < collection.length; i  ) {
        type array_element = collection.get(index);

    }

Yineleyici hasNext()/sonraki():

    for (Iterator iterator = collection.iterator(); iterator.hasNext();) {
        type type = (type) iterator.next();

    }

ve benim favorim yazmak çok basit çünkü:

    for (iterable_type iterable_element : collection) {

    }

CEVAP
8 Mart 2011, Salı


İlk olarak, öğenin dizin istediğinizde kullanışlıdır. Bu temelde ArrayListler için diğer iki çeşidini eşdeğerdir, ama eğer LinkedList kullanırsanız çok yavaş olacaktır.

İkinci bir öğenin dizin ihtiyacın yok ama yineleme gibi öğeleri kaldırmak gerekebilir yararlıdır. Ama bu çok ayrıntılı bir IMO olmanın dezavantajı var.

Üçüncü sürüm de benim tercih edilen bir seçimdir. Bu kısa ve çalışmaları için tüm durumlarda gerekmez, herhangi bir dizin veya alttaki yineleyici (yani sadece öğelere erişme, onları çıkarma veya değiştirme Collection herhangi bir şekilde - en sık rastlanan durum).

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • arnejann

    arnejann

    3 Kasım 2007
  • superflyy88

    superflyy88

    8 ŞUBAT 2009
  • The Slow Mo Guys

    The Slow Mo

    15 AĞUSTOS 2010