在Java中,定义二维动态数组可以通过以下几种方式:
1. 使用`ArrayList`的嵌套列表来实现动态二维数组:
```java
import java.util.ArrayList;
public class Dynamic2DArray {
public static void main(String[] args) {
ArrayList> dynamicArray = new ArrayList<>();
// 添加行
for (int i = 0; i < 3; i++) {
ArrayList
// 添加列
for (int j = 0; j < 4; j++) {
row.add(0); // 初始化值为0
}
dynamicArray.add(row);
}
// 访问元素
dynamicArray.get(0).set(0, 1); // 设置第0行第0列的值为1
System.out.println(dynamicArray.get(0).get(0)); // 输出第0行第0列的值
}
}
2. 使用`Map`实现动态二维数组:
```java
import java.util.HashMap;
import java.util.Map;
public class Dynamic2DArray {
public static void main(String[] args) {
Map
> dynamicArray = new HashMap<>(); // 添加行
for (int i = 0; i < 3; i++) {
Map
row = new HashMap<>(); // 添加列
for (int j = 0; j < 4; j++) {
row.put(j, 0); // 初始化值为0
}
dynamicArray.put(i, row);
}
// 访问元素
dynamicArray.get(0).put(0, 1); // 设置第0行第0列的值为1
System.out.println(dynamicArray.get(0).get(0)); // 输出第0行第0列的值
}
}
3. 使用`double`类型的`ArrayList`实现动态二维数组:
```java
import java.util.ArrayList;
public class Dynamic2DArray {
public static void main(String[] args) {
ArrayList> dynamicArray = new ArrayList<>();
// 添加行
for (int i = 0; i < 3; i++) {
ArrayList
// 添加列
for (int j = 0; j < 4; j++) {
row.add(0.0); // 初始化值为0.0
}
dynamicArray.add(row);
}
// 访问元素
dynamicArray.get(0).set(0, 1.1); // 设置第0行第0列的值为1.1
System.out.println(dynamicArray.get(0).get(0)); // 输出第0行第0列的值
}
}
以上示例展示了如何使用`ArrayList`的嵌套列表来创建一个动态的二维数组,并演示了如何添加元素和访问元素。您可以根据需要选择合适的方法来实现动态二维数组