2017-01-30 70 views
-2

我熟悉了只使用Python的方法,我似乎無法弄清楚是否有更簡單的方法來添加嵌套對象。Java:嘗試添加到另一個對象時聲明對象值

例Python來創建一個嵌套列表是這樣的簡單:

list = [[1,2,3],[2,2,2],[3,3,3]] 

有沒有辦法做這樣的事情在Java中?還是我必須聲明一個空的對象,然後通過一個像

Vector<Vector<String>> example = new Vector<Vector<String>>(); 
String[] thisIsAStringArray = {"AAA", "BBB", "CCC", "DDD", "EEE"}; 
Vector<String> example2 = new Vector<String>(); 
example2.addAll(Arrays.asList(thisIsAStringArray)); 
example.addElement(example2); 

像添加一個,必須有一個更快的方法嗎?

+3

Java是不是Python的;而靜態輸入需要更多的輸入(在一般情況下)。然而,在你的具體例子中,'int [] [] list = {{1,2,3},{2,2,2},{3,3,3}};' –

+0

集合文字正在用Java實現9,所以你將不得不等待大約7個月。但是,您可以使用以下值初始化數組:int [] array = {1,2,3,...};'列出'List list = Arrays.asList(1,2,3,...);' –

+0

有一個有用的帖子來檢查:[創建和實例化數組](http://stackoverflow.com/documentation/java/99/arrays/404/creating-and-initializing-arrays#t=201607261943570177) –

回答

0

您可以在線聲明數組:

int[][] array = {{1,2,3},{2,2,2},{3,3,3}}; 
0

你可以嘗試以下方法:

Vector<Vector<String>> example = new Vector<Vector<String>>(Collections.singleton(new Vector<String>(Arrays.asList("AAA", "BBB", "CCC", "DDD", "EEE")))); 

在Java中,objects需要建設或可與已建成的對象被分配。 (一個例外是String對象,它可以從字面上構建,而不需要對構造函數進行顯式調用)。在Java中,數組(也被視爲對象)可以從對象或文字列表中初始化。但是由於您使用的是Vector類,因此需要通過調用構造函數來構造對象。

但是,如果你沒有使用Vector或其他參數集合對象的硬性要求,你可以在這裏使用簡單的字符串數組:

String[][] example = new String[][] {{"AAA", "BBB"}, {"CCC", "DDD"}};