二维ArrayList实现:动态创建与遍历示例

需积分: 1 0 下载量 169 浏览量 更新于2024-08-03 收藏 2KB TXT 举报
在Java编程中,实现二维数组通常使用数组(Array)或列表(List)。然而,当我们需要动态调整数组大小或者更灵活地管理元素时,可以考虑使用嵌套的ArrayList来模拟二维数组的效果。本文档提供了一个实例,展示了如何通过ArrayList来构建和操作一个二维数组。 首先,我们导入了所需的`java.util.ArrayList`和`java.util.List`类,这两个包包含ArrayList及其相关的功能。在`Main`类的`main`方法中,我们开始创建一个名为`twoDimArrayList`的二维ArrayList,其类型定义为`List<List<Integer>>`,这意味着它内部存储的是一个由Integer类型的ArrayList组成的列表。 接着,我们创建了两个一维ArrayList对象,`row1`和`row2`,它们分别存储着数组的每一行元素。对于每一行,我们使用`add()`方法将其添加到`twoDimArrayList`中。这里体现了ArrayList的灵活性,我们可以随时添加或删除行。 在处理二维ArrayList时,我们使用了嵌套的for-each循环结构。外部循环遍历`twoDimArrayList`中的每一行,内部循环则遍历当前行的所有元素(即每个`List<Integer>`)。`System.out.print(num + "")`语句用于将每个元素打印出来,每行元素打印完毕后用`System.out.println()`换行,从而呈现二维数组的结构。 重要的是要理解ArrayList的动态性质与静态数组(如`int[][]`)的区别。静态数组在创建时需要预定义大小,一旦分配,就不能改变其大小。相比之下,ArrayList可以根据需要动态扩展或收缩,这使得在需要动态增加或减少元素的情况下更为方便。 通过嵌套ArrayList的方式实现二维数组,Java提供了更灵活的数据结构,有助于在运行时动态管理和操作数组。这个例子展示了如何有效地利用ArrayList来模拟二维数组,并展示了其在Java编程中的实际应用。