Java 数组逆时针旋转 90 度:代码示例和解释
要将一个二维数组 'short[][]' 逆时针旋转 90 度,您可以使用以下 Java 代码来实现:
public class Main {
public static void main(String[] args) {
// 原始二维数组
short[][] originalArray = {
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
// 逆时针旋转后的二维数组
short[][] rotatedArray = rotateArray(originalArray);
// 输出结果
for (short[] row : rotatedArray) {
for (short element : row) {
System.out.print(element + " ");
}
System.out.println();
}
}
public static short[][] rotateArray(short[][] originalArray) {
int rows = originalArray.length;
int cols = originalArray[0].length;
// 创建一个新的二维数组来保存旋转后的结果
short[][] rotatedArray = new short[cols][rows];
// 逆时针旋转
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
rotatedArray[cols - j - 1][i] = originalArray[i][j];
}
}
return rotatedArray;
}
}
这段代码中,我们首先定义了一个名为 'rotateArray' 的方法,该方法接受一个二维数组作为参数,并返回一个逆时针旋转后的新二维数组。在 'rotateArray' 方法中,我们首先确定原始二维数组的行数和列数,然后创建一个新的二维数组来存储旋转后的结果。接下来,我们使用两个嵌套的 for 循环来遍历原始数组,并将元素按照逆时针旋转的规则赋值给新数组。最后,我们在 'main' 方法中,使用一个示例二维数组来测试 'rotateArray' 方法,并输出旋转后的结果。
上述代码的输出结果为:
3 6 9
2 5 8
1 4 7
这是将原始二维数组 '{{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}' 逆时针旋转 90 度后得到的结果。
代码解释:
-
rotateArray方法- 接受一个二维数组
originalArray作为参数。 - 获取原始数组的行数和列数,分别用
rows和cols表示。 - 创建一个新的二维数组
rotatedArray,其行数为原始数组的列数,列数为原始数组的行数,以准备存储旋转后的结果。 - 使用两个嵌套循环遍历原始数组。
- 外层循环控制行
i。 - 内层循环控制列
j。
- 外层循环控制行
- 对于每个元素
originalArray[i][j],将其赋值给rotatedArray[cols - j - 1][i]。这个赋值方式是旋转的关键,它将原始数组的元素按照逆时针旋转 90 度放置到新的数组中。 - 返回旋转后的数组
rotatedArray。
- 接受一个二维数组
-
main方法- 定义一个示例二维数组
originalArray。 - 调用
rotateArray方法,将originalArray传递给它,并接收旋转后的数组rotatedArray。 - 使用嵌套循环遍历
rotatedArray,并将每个元素输出到控制台。
- 定义一个示例二维数组
总结:
通过上述代码示例和解释,您应该能够理解如何使用 Java 代码将一个二维数组逆时针旋转 90 度。这个方法可以应用于各种数据处理场景,例如图像处理、矩阵运算等。
原文地址: https://www.cveoy.top/t/topic/Sbk 著作权归作者所有。请勿转载和采集!