【发布时间】:2018-01-27 22:16:30
【问题描述】:
我无法为游戏地图设计创建矩阵。
void prepareMatrix(int width, int height)
{
room = new int[height][width];
for(int i = 0; i < height; i++)
{
for(int j = 0; j < width; j++)
{
if(i < height/4)
{
room[i][j] = 2;
}
else if(j == 0 || j == --width)
{
room[i][j] = 1;
}
else if(i == --height)
{
room[i][j] = 1;
}
else
{
room[i][j] = 0;
}
}
}
}
我想创建这样的东西:(1- Wall1, 2- wall2, 0-floor)
2 2 2 2 2 2
2 2 2 2 2 2
1 0 0 0 0 1
1 0 0 0 0 1
1 0 0 0 0 1
1 1 1 1 1 1
我明白了:
2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2
1 0 0 0 0 1 0 0 0 0
1 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
矩阵将是地图的蓝图。
【问题讨论】:
-
记住操作符
--有副作用,使用调试器单步调试你的程序。 -
我对大型项目的编码还比较陌生,所以我还不知道如何使用调试器。
-
你知道运营商
--是做什么的吗? -
重点是:
--width会改变width的值。它的意思与width = width - 1大致相同。你实际上应该写的是width-1(当然height也是如此) -
“矩阵”是单数; "matricies" 是复数形式。
标签: java arrays matrix greenfoot