Java 二维数组的动态赋值,每行的长度不一样
时间: 2024-05-03 17:22:46 浏览: 165
在 Java 中,二维数组的长度是固定的,但是每行的长度可以不同。以下是一种动态赋值二维数组的方法:
```java
// 定义一个二维数组
int[][] arr = new int[3][];
// 给第一行赋值
arr[0] = new int[]{1, 2, 3};
// 给第二行赋值
arr[1] = new int[]{4, 5};
// 给第三行赋值
arr[2] = new int[]{6, 7, 8, 9};
// 输出二维数组
for (int i = 0; i < arr.length; i++) {
for (int j = 0; j < arr[i].length; j++) {
System.out.print(arr[i][j] + " ");
}
System.out.println();
}
```
运行结果:
```
1 2 3
4 5
6 7 8 9
```
在上述代码中,我们定义了一个长度为 3 的二维数组 `arr`,但是每行的长度并没有指定。我们通过 `arr[0] = new int[]{1, 2, 3}`、`arr[1] = new int[]{4, 5}`、`arr[2] = new int[]{6, 7, 8, 9}` 给二维数组的每一行分别赋值。注意,每次赋值都需要使用 `new int[]` 来创建一个新的数组。最后,我们通过双重循环遍历二维数组并输出结果。
相关问题
Java 二维数组的动态赋值,每行的长度不一样,用for循环输入
可以使用一个二维ArrayList来实现动态赋值,每行的长度不一样的情况下,可以在每行输入时,先创建一个ArrayList来存储该行的数据,然后再将该ArrayList添加到二维ArrayList中。
示例代码如下:
```java
import java.util.ArrayList;
import java.util.Scanner;
public class DynamicTwoDimensionalArray {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 创建二维ArrayList
ArrayList<ArrayList<Integer>> list = new ArrayList<>();
// 输入行数
System.out.print("请输入二维数组的行数:");
int row = scanner.nextInt();
// 输入每行的数据
for (int i = 0; i < row; i++) {
// 创建一个ArrayList来存储该行的数据
ArrayList<Integer> rowList = new ArrayList<>();
System.out.print("请输入第" + (i + 1) + "行的数据(用空格分隔):");
String[] data = scanner.next().split(" ");
// 将该行的数据添加到rowList中
for (String s : data) {
rowList.add(Integer.parseInt(s));
}
// 将rowList添加到二维ArrayList中
list.add(rowList);
}
// 输出二维ArrayList
System.out.println("输入的二维数组为:");
for (ArrayList<Integer> rowList : list) {
for (int num : rowList) {
System.out.print(num + " ");
}
System.out.println();
}
}
}
```
示例输出:
```
请输入二维数组的行数:3
请输入第1行的数据(用空格分隔):1 2
请输入第2行的数据(用空格分隔):3 4 5
请输入第3行的数据(用空格分隔):6 7 8 9
输入的二维数组为:
1 2
3 4 5
6 7 8 9
```
Java二维数组的赋值
在Java中,二维数组是一种表格结构的数据类型,用于存储和操作多行多列的数据。创建二维数组并赋值通常涉及两步:
1. **声明和初始化**:
```java
// 定义一个5x3的整型二维数组
int[][] twoDimensionalArray = new int[5][3];
```
2. **元素赋值**:
- 可以通过索引来逐个赋值:
```java
// 遍历数组并赋值
for (int i = 0; i < twoDimensionalArray.length; i++) {
for (int j = 0; j < twoDimensionalArray[i].length; j++) {
twoDimensionalArray[i][j] = i * twoDimensionalArray[i].length + j;
}
}
- 或者一次性批量赋值(假设values是一个一维数组):
```java
int[] values = {1, 2, 3, 4, 5, 6, 7, 8, 9};
for (int i = 0; i < values.length; i += 3) {
twoDimensionalArray[i / 3][i % 3] = values[i];
}
```
注意,在实际应用中,根据需求可以灵活地调整数组大小和赋值策略。
阅读全文
相关推荐
















