如何从2维数组列表中打印元素?

时间:2015-07-25 18:20:48

标签: java arraylist printing 2d

最后一个命令应该打印" printcat"但事实并非如此。那是为什么?

ArrayList<String[]> outerArr = new ArrayList<String[]>();    
String[] myString1= {"hey","hey","hey","hey"};  
outerArr .add(myString1);
String[] myString2= {"you","printcat","you","you"};
outerArr .add(myString2);
System.out.println(Arrays.toString(outerArr.get(1)));
System.out.println(outerArr.get(1).get(1));

3 个答案:

答案 0 :(得分:1)

我不认为它是二维数组列表。它只是一个包含字符串数组作为数据的Array-List。 您可以使用System.out.println(outerArr.get(1)[1]);来获得结果。

outerArr.get(1)将返回String[],即{"you","printcat","you","you"},然后您可以使用outerArr.get(1)[1],这将在第一个索引处返回“printcat”元素。

答案 1 :(得分:0)

ListArrayList和数组([])都是不同的东西(虽然前两个是相关的,但它们都是类似的东西)。如果你想要2D的东西,这意味着你使用了2次。例如,2D List看起来像List<List<String>>,2D数组看起来像String[][]。你所拥有的是一个数组列表,它不是2D数组,也不是2D列表。你最想要的是List<List<String>> outerArr = new ArrayList<List<String>>();。其余的你应该弄清楚自己。

答案 2 :(得分:0)

我终于明白了!由于Arraylist存在于Array中,因此您必须将Array作为普通数组处理。所以这很好。

System.out.println(outerArr.get(1)[1]);