请使用java编程实现二维数组的翻转操作,例如输入二维数组如下 1 2 3 4 5 6 7 8 9 经过翻转处理后得到如下输出 1 4 7 2 5 8 3 6 9
时间: 2024-09-15 19:09:52 浏览: 48
在Java中实现二维数组的翻转操作,可以通过交换数组元素的位置来完成。这里有一个简单的实现方式,假设我们有一个m*n的二维数组,我们将首先交换行,然后再交换每行内的元素。具体步骤如下:
1. 水平翻转:交换数组的每一行,即将第i行和第m-i行进行交换。
2. 垂直翻转:对于已经水平翻转的数组,再交换每行内的元素位置,即将第j个元素和第n-j个元素进行交换。
这里是一个简单的Java方法实现:
```java
public class ArrayFlip {
public static void main(String[] args) {
// 假设有一个3x3的二维数组
int[][] array = {
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
// 执行翻转操作
flip2DArray(array);
// 打印翻转后的数组
printArray(array);
}
public static void flip2DArray(int[][] array) {
int m = array.length; // 行数
int n = array[0].length; // 列数
// 水平翻转
for (int i = 0; i < m / 2; i++) {
int[] temp = array[i];
array[i] = array[m - 1 - i];
array[m - 1 - i] = temp;
}
// 垂直翻转
for (int i = 0; i < m; i++) {
for (int j = 0; j < n / 2; j++) {
int temp = array[i][j];
array[i][j] = array[i][n - 1 - j];
array[i][n - 1 - j] = temp;
}
}
}
public static void printArray(int[][] array) {
for (int i = 0; i < array.length; i++) {
for (int j = 0; j < array[i].length; j++) {
System.out.print(array[i][j] + " ");
}
System.out.println();
}
}
}
```
执行上述代码后,`array`二维数组将按照题目要求被翻转。
阅读全文