我的可能不是最好的答案,仅供参考
public class Test {
static int i = 0,j = 0;
public static void method(int array[][]){
for (int m = 3,n = 0; m > 1&& n < 2; m--,n++) { //每次找到对角线的两个坐标,标识子矩阵
while(i!=m){
System.out.println(array[i++][j]);
}
while(j!=m){
System.out.println(array[i][j++]);
}
while(i!=n){
System.out.println(array[i--][j]);
}
while(j!=n){
System.out.println(array[i][j--]);
}
i++;
j++;
}
}
public static void main(String[] args) {
int array[][] = {{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}};
method(array);
}
}