Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/344.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 二维字符串数组和字符串数组列表之间的差异_Java_Arrays_Multidimensional Array - Fatal编程技术网

Java 二维字符串数组和字符串数组列表之间的差异

Java 二维字符串数组和字符串数组列表之间的差异,java,arrays,multidimensional-array,Java,Arrays,Multidimensional Array,我正在使用 ArrayList<ArrayList<String>> Stringdata = new ArrayList<ArrayList<String>>(); ArrayList是实现接口列表的类。 根据声明的数组:String[]variable在Java中是一种有限长度的数据结构 使用2D ArrayList而不是普通数组的主要区别在于ArrayList的长度不受限制。您可以在RAM允许的范围内向ArrayList添加尽可能多的元素

我正在使用

ArrayList<ArrayList<String>> Stringdata = new ArrayList<ArrayList<String>>();

ArrayList是实现接口列表的类。 根据声明的数组:
String[]variable
在Java中是一种有限长度的数据结构

使用2D ArrayList而不是普通数组的主要区别在于ArrayList的长度不受限制。您可以在RAM允许的范围内向ArrayList添加尽可能多的元素

另一方面,
String[]stringData=newstring[10][10]将此矩阵限制为100个元素(10行,每个行10个元素)。如果试图将元素添加到10x10矩阵的索引10(注意索引仅从0到9),编译器将抛出错误


通常,如果您已经知道矩阵中需要多少空间,建议您使用数组。另外,数组列表非常好。

数组不同于数组列表。Java没有二维数组。
String[][]
实际上是
String
s的数组与数组不同(数组在创建时大小是固定的),列表是动态数据结构:它们可以增长也可以收缩我想你真正的问题是
ArrayList与数组有何不同?
如果你在谷歌上搜索,你会得到无限的结果是的,谢谢@RobOhRob,它解决了我的问题!我之前有点困惑
String Stringdata[][] = new String[10][10];