publicint[][]generateMatrix(int n){int[][] ans =newint[n][n];int row = n, col = n, step =1;int up =0, down = row -1, left =-1, right = col -1;// 确定上下左右四条边的位置while(step <= n * n){for(int i =++left; i <= right; i++) ans[up][i]= step++;// 填充上行从左到右for(int i =++up; i <= down; i++) ans[i][right]= step++;// 填充右列从上到下for(int i =--right; i >= left; i--) ans[down][i]= step++;// 填充下行从右到左for(int i =--down; i >= up; i--) ans[i][left]= step++;// 填充左列从下到上}return ans;}