SORU
25 Mart 2009, ÇARŞAMBA


Harita uygular ve ekleme sipariş tutan Java Sınıf?

Anahtar-değer Birliği, ama sağlamalarının kullanmadan olan Java'da bir sınıf arıyorum. Şu anda ne yapıyorum burada:

  1. Bir karma tablo için değerleri ekleyin
  2. Bu karma tablo için bir yineleyici.() entrySet.
  3. Tüm değerler arasında dolaşmak ve:
    1. Bir Harita alın.Yineleyici için girdi
    2. Değerine göre tip Modül bir nesne (özel bir sınıf) oluşturun.
    3. Bir JPanel sınıfı ekleyin;
  4. Paneli göster.

Sorun bu değil ki ben var kumanda üzerinden sırası anlıyorum değerleri, yani ben görüntülenemiyor değerleri verilen bir sipariş olmadan sabit kodlama düzeni).

Bunun için ArrayList veya bir Vektör kullanırdım, ama daha sonra kod ArrayList veya bir Vektör ile yapamam ki belirli bir Anahtar için Modül nesne kapmak istiyorum.

Herkes bunu yapmak, ya da bir karma tablosu eklendi zaman temel değerlerini almak için bir yol olacak açık kaynak kodlu ücretsiz/Java sınıf biliyor mu?

Teşekkürler!

CEVAP
25 Mart 2009, ÇARŞAMBA


LinkedHashMap 18 ** öneririm. LinkedHashMap sırayla anahtarları tutar TreeMap Comparator Comparable doğal unsurlar sıralama ile sıralanmış tutulurken eklenmiş.

Beri değiştirmek zorunda değil tutmak öğeleri sıralama, LinkedHashMap Daha hızlı olması için çoğu zaman; TreeMap O(log n) performans için containsKey, get, put, ve remove göre Javadocs, LinkedHashMap O(1) her biri için.

Eğer API belirli bir sıralama şekli farklı olarak sadece tahmin edilebilir bir sıralama umuyor, arayüzleri bu iki sınıf, NavigableMap SortedMap uygulamak kullanmayı düşünün. Bu API içine belirli uygulamaları sızmasına izin vermeyin ve bu özel sınıflar, iki ya da tamamen farklı bir uygulama için geçiş sonra.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Michael Neal

    Michael Neal

    2 Mayıs 2009
  • placeboing

    placeboing

    7 Mart 2006
  • superemposed

    superemposed

    25 Aralık 2007