2017-01-30 43 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"}};