2012-10-17 101 views
1

是否可以執行以下操作?多維Java ArrayList(聲明元素語法)

private static ArrayList<integer<integer<String>>> myArrayList; 

換句話說,創建聲明的元素語法一個ArrayList?

實施例:

myArrayList[0][0] = "This is the string."; 

如果不是,是有可能這樣做與正常數組?

+0

那麼你試過嗎?你得到了什麼結果?和整數將比整數工作得更好:) – giorashc

+0

你需要一個多維數組的字符串? – giorashc

+0

'integer'應該是'Integer',而且你也不能'Integer '。這是不允許的。 –

回答

1

看來你正在尋找在Java的多維數組,聲明如下:

String [][] list = new String[10][10]; 
list[0][0] = "This is a string"; 
System.out.println(list[0][0]); 
1

您可以通過以下方式申報的ListList: -

List<List<String>> listOfList = new ArrayList<List<String>>(); 

初始化您的列表,然後在您的列表元素中添加字符串: -

listOfList.add(new ArrayList<String>()); 

listOfList.get(0).add("my String"); 
1

你可以做

List<List<String>> list = new ArrayList<List<String>>(); 
list.add(new ArrayList<String>()); 

list.get(0).add("This is the string"); 
0

你想在實時實現什麼?Java定義的API集,它有自己的用途和目的。如果你想使用多維數組,我建議去Object[][],但你應該能夠申報

ArrayList list[][] = new ArrayList[5][7]; 

通過這樣做,你就會讓你的操作有點複雜。而更多的是ArrayList不過是單維Object陣列。

FYI

How to create a Multidimensional ArrayList in Java?

+0

不幸的是你有錯誤的語法。不確定你的意思是「實時獲得」。 –

+0

我不明白的評論'錯誤的語法',這是一個有效的Java語句,可以編譯。 –

+0

它編譯,但我不認爲它正在做你的意思。 'new ArrayList [5] [7]'將實例化一個原始ArrayList數組的數組,這不是OP想要的。你可能意味着彼得和羅希特展示的東西。 –