2016-04-09 42 views
0

Merhaba ve noobish sorusu için üzgünüm. Sorunum hakkında çok fazla araştırma yaptım ama sorunumla ilgili hiçbir şey bulamadım.Dize Dizileri İçeren Dize Dizisi

Yani ben böyle bir şey var:

public static String something [][] = 
{ 
    {"1","100"}, 
    {"2","1000"}, 
    {"3","10000"} 
}; 

public static String somethingelse [][] = 
{ 
    {"1","100"}, 
    {"2","1000"}, 
    {"3","10000"} 
}; 

public static String CATEGORIES[][][] = 
{ 
    something, 
    somethingelse 
}; 

Nasıl ve ben KATEGORİLER [şey] .get (1 çizgi) hattan dönebilirsiniz o tabii mümkün olup olmadığını?

Bir şey kullanmak istemiyorum [0] Bu gibi bir şeyi kullanmak istiyorum CATEGORIES.something [0] Bunu nasıl açıklayacağımı bilmiyorum.

Şimdiden teşekkürler!

+0

Dili etiketlerseniz, biraz daha hızlı yardım alabilirsiniz. – John

+0

Dilden bahsetmeyi unuttum Üzgünüm – HellDev

+1

İki alanlı bir sınıf tanımlayın: bir şey ve bir şeylerElse. https://docs.oracle.com/javase/tutorial/java/javaOO/ –

cevap

1

yapabilirsiniz (ama korkunç bir uygulamadır) ile bu:

: Listenin adı olarak anahtar-değer çiftleri ve böyle bir arraylist bir HashMap kullanabilirsiniz
public static class Categories { 
    public String something [][] = { 
     {"1","100"}, 
     {"2","1000"}, 
     {"3","10000"} 
    }; 

    public String somethingelse [][] = { 
     {"1","100"}, 
     {"2","1000"}, 
     {"3","10000"} 
    }; 
} 

public static final Categories CATEGORIES = new Categories(); 
+0

Statik sınıftan yeni bir örnek oluşturuyor musunuz? –

+0

Ne kadar kötüsü, alanları kamusal hale getirmek, alanların bulunduğu bir sınıf oluşturmamaktır. Sınıfın kendisi yapmak için özel olabilir, daha az korkunç. –

+0

@ Bálint “soyut” sınıfında mı düşünüyorsunuz? Bu halka ortak bir statik sınıftır. Tabii ki yeni bir örnek oluşturabilirsiniz. –

0

HashMap<String, ArrayList<String>> c = new HashMap<>(); 
ArrayList<String> s = new ArrayList<>(); 
s.put("HI"); 
s.put("HELLO"); 
ArrayList<String> s2 = nee ArrayList<>(); 
s2.put("HI Again!"); 
s2.put("Hello Again"); 
c.put("something", s); 
c.put("something2", s2); 

Sonra

c.get("something").get(0); 

Not olarak erişebilirsiniz: uygunsuz değişken adları için Üzgünüm, telefondayım.

+0

Cevabınız için teşekkürler ama biraz kafa karıştırıcı görünüyor – HellDev

+0

@HellDev oracle'nin koleksiyonları hakkındaki eğitime göz at https://docs.oracle.com/javase/tutorial/collections/ –

+0

Açıklama arkadaşım için teşekkürler kodunuzu görmek için tommorow'u kontrol edeceğim İstediğimi yaparsa ve size cevap verirse. Tekrar teşekkürler! – HellDev