【问题标题】:Difference between 2d string array and Array list of string二维字符串数组和字符串数组列表之间的区别
【发布时间】:2019-09-17 20:34:48
【问题描述】:

我正在使用

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

创建一个二维字符串数组 它与使用有什么不同

String Stringdata[][] = new String[10][10];

【问题讨论】:

  • 数组不同于数组列表。
  • Java 没有二维数组。 String[][] 实际上是Strings 的数组。 --- 与数组(创建时大小固定)不同,列表是动态数据结构:它们可以增长和缩小
  • 我认为你真正的问题是......How is an ArrayList different from an array?
  • 如果你用谷歌搜索,你会得到无限的结果
  • 是的,谢谢@RobOhRob,它确实解决了我的问题!之前有点迷茫

标签: java arrays multidimensional-array


【解决方案1】:

ArrayList 是一个实现接口 List 的类。 由String[] variable声明的数组是Java中的有限长度数据结构。

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

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

一般来说,如果您已经知道矩阵中需要多少个空格,建议您使用数组。否则,ArrayList 真的很好。

【讨论】:

    猜你喜欢
    • 2022-01-09
    • 2021-06-12
    • 1970-01-01
    • 2016-05-06
    • 2021-09-11
    • 2014-05-20
    • 2013-03-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多