2. 现有一个二维数组 int[][] array={{91,25,8},{56,14,2},{47;3,67}}; 写代码交换这个二维数组的行、列数据。Java语言学
时间: 2024-12-24 14:20:08 浏览: 12
在Java中,你可以通过创建一个新的二维数组并逐个元素地复制原数组的内容来交换二维数组的行和列。但是由于数组的索引特性,直接交换行和列比较复杂,因为需要临时存储一部分数据。这里提供一个简单的示例,假设我们将行转换为列,列转换为行:
```java
public class Main {
public static void main(String[] args) {
int[][] originalArray = {{91, 25, 8}, {56, 14, 2}, {47, 3, 67}};
// 创建新的二维数组来保存转换后的数据
int[][] swappedArray = new int[originalArray.length][];
for (int i = 0; i < originalArray.length; i++) {
// 将每一行复制到新数组的当前列
swappedArray[i] = Arrays.copyOf(originalArray[i], originalArray[i].length);
}
// 然后将新数组的列内容赋值回原始数组,实现行和列的交换
for (int i = 0; i < originalArray.length; i++) {
for (int j = 0; j < originalArray[i].length; j++) {
originalArray[j][i] = swappedArray[i][j]; // 注意索引的改变,从 (row, col) 变为 (col, row)
}
}
// 输出交换后的数组
for (int[] row : originalArray) {
System.out.println(Arrays.toString(row));
}
}
}
```
运行这段代码,你会发现数组的行和列已经被交换。
阅读全文