2012-10-17 99 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想要的。你可能意味着彼得和罗希特展示的东西。 –