使用while循环进行判断
import java.util.Scanner;
public class text2 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int n= sc.nextInt();
//螺旋矩阵
int arr[][]=new int[n][n];
int x,y;
arr[x=0][y=0]=1;
int sum=1;
while(sum<n*n){
//向右
while(y+1<n&&arr[x][y+1]==0){
arr[x][++y]=++sum;
}
//向下
while(x+1<n&&arr[x+1][y]==0){
arr[++x][y]=++sum;
}
//向左
while(x-1>=0&&arr[x-1][y]==0){
arr[--x][y]=++sum;
}
//向上
while(y-1>=0&&arr[x][y-1]==0){
arr[x][--y]=++sum;
}
}
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
//使用printf输出对齐方式
System.out.printf("%d\t",arr[i][j]);
}
System.out.println();
}
}
}