/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package cn.mili.tasty.web; /** * * @author YHC */ public class Test { public static void main(String args[]) { int temp = 1, direction = 1; int y = 0, x = 0; int max = 5; int[][] data = new int[max][max]; while (temp < max * max) { data[y][x] = temp; switch (direction) { case 1://右 if (x + 1 < max && data[y][x + 1] == 0) { temp++; x++; } else { direction = 2; } break; case 2://下 if (y + 1 < max && data[y + 1][x] == 0) { temp++; y++; } else { direction = 3; } break; case 3://左 if (x - 1 >= 0 && data[y][x - 1] == 0) { temp++; x--; } else { direction = 4; } break; case 4://上 if (y - 1 >= 0 && data[y - 1][x] == 0) { temp++; y--; } else { direction = 1; } break; default: break; } data[y][x]=temp; } for (int i = 0; i < max; i++) { for (int j = 0; j < max; j++) { System.out.print(data[i][j]+"\t"); } System.out.println(""); } } }
运行结果:
1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11 10 9 ------------------------------------------------------------------------ BUILD SUCCESS ------------------------------------------------------------------------