classSolution{public List<Integer>spiralOrder(int[][] matrix){//统计行和列int row = matrix.length;int col = matrix[0].length;
List<Integer> ans =newArrayList<Integer>();int l =0, r = col -1, t =0, b = row -1;while(true){for(int i = l; i <= r; i++){
ans.add(matrix[t][i]);}
t++;if(t > b)break;for(int i = t; i <= b; i++){
ans.add(matrix[i][r]);}
r--;if(r < l)break;for(int i = r; i >= l; i--){
ans.add(matrix[b][i]);}
b--;if(b < t)break;for(int i = b; i >= t; i--){
ans.add(matrix[i][l]);}
l++;if(l > r)break;}return ans;}}