java如何使这个2D数组向右旋转90度?
所以我有一个2D数组,它应该向右旋转90度,但它却向左旋转。真的不明白为什么
公共类代码16{
public static void main (String args[]){
int [] [] oldarray = new int [3][3];
int value = 1;
for (int i = 0; i < 3; i++){
for (int j =0; j<3; j++){
oldarray[i][j] = value;
value++;
}
}
for (int i = 0; i < 3; i++){
for (int j =0; j<3; j++){
System.out.print(oldarray[i][j] + "\t");
}
System.out.println("");
}
oldarray = rotate(oldarray, 3);
System.out.println("");
for (int i = 0; i < 3; i++){
for (int j =0; j<3; j++){
System.out.print(oldarray[i][j] + "\t");
}
System.out.println("");
}
}
public static int [][] rotate (int [][] passedIn, int n){
int [][] newarray = new int [n][n];
for (int i = 0; i < n; i++){
for (int j =0; j<n; j++){
newarray[i][j] = passedIn [j][n-1-i];
}
}
return newarray;
}
}
输出:
1 2 3
4.56
7 8 9
369
2 5 8
14 7
# 1 楼答案
而不是
另外,在使用Java8时,您可以考虑使用^ {< CD1>}来打印数组: