当前位置: 首页 > 编程语言 > Java > 正文

Java编程那些事儿50—多维数组使用示例2

时间:2010-03-07 csdn 陈跃峰

6.6.3 存储图形结构

要求:根据数组中的值,在对应位置绘制指定的字符。规定0绘制空格,1绘制星号(*)。数组的值如下所示:

{
 {0,0,0,1,0,0,0},
 {0,0,1,0,1,0,0},
 {0,1,0,0,0,1,0},
 {1,0,0,0,0,0,1},
 {0,1,0,0,0,1,0},
 {0,0,1,0,1,0,0},
 {0,0,0,1,0,0,0}
}

该题目是一个基本的数组应用,数组中的值存储的是控制信息,程序根据数组中的值实现规定的功能。

实现思路:循环数组中的元素,判断数组中的值,根据值绘制对应的字符即可。

实现的代码如下所示:

int[][] map = {
  {0,0,0,1,0,0,0},
  {0,0,1,0,1,0,0},
  {0,1,0,0,0,1,0},
  {1,0,0,0,0,0,1},
  {0,1,0,0,0,1,0},
  {0,0,1,0,1,0,0},
  {0,0,0,1,0,0,0}
};
//输出数组的值
for(int row = 0;row < map.length;row++){
 for(int col = 0;col < map[row].length;col++){
  switch(map[row][col]){
  case 0:
   System.out.print(' ');
   break;
  case 1:
   System.out.print('*');
   break;
  }
 }
 System.out.println();
}

类似的代码在游戏开发中,可以用来代表游戏中的地图数据,或者俄罗斯方块等益智游戏中地图块的值。