我的符号迷失在迷宫中
My Symbol is Lost in the Maze
我正在制作一个迷宫游戏作为大学评估的一部分。我打算遍历迷宫板,直到找到角色 '&'
然后 return 玩家的 y 坐标(我已经完成了相同的方法来获取 x 位置并获得相同的错误)
我得到的错误:
MazeGame.java:133: error: cannot find symbol
return i;
^
symbol: variable i
location: class MazeGame
1 error
还有,我的代码,
public static int getCurrentYPosition() {
for (int i = 0; i < numberOfRows; i++) {
for (int n = 0; n < board[i].length; n++) {
if (board[i][n] == '&') {
break;
}
}
}
return i;
}
为什么找不到符号?
i
不在 循环之后的范围内。 return
当你找到它时,并处理没有用标记找到该字符的情况(比如 -1
)。并且,如所写,break
仅适用于 inner 循环 (因此,如果我们通过增加 i
可见例如,它的范围)然后 return
numberOfRows
随着 i
递增直到那时。所以,我认为你真的想要
public static int getCurrentYPosition() {
for (int i = 0; i < numberOfRows; i++) {
for (int n = 0; n < board[i].length; n++) {
if (board[i][n] == '&') {
return i;
}
}
}
return -1;
}
请注意,您也可以使用 for-each
循环编写它,例如
for (int i = 0; i < numberOfRows; i++) {
for (char ch : board[i]) {
if (ch == '&') {
return i;
}
}
}
return -1;
我正在制作一个迷宫游戏作为大学评估的一部分。我打算遍历迷宫板,直到找到角色 '&'
然后 return 玩家的 y 坐标(我已经完成了相同的方法来获取 x 位置并获得相同的错误)
我得到的错误:
MazeGame.java:133: error: cannot find symbol
return i;
^
symbol: variable i
location: class MazeGame
1 error
还有,我的代码,
public static int getCurrentYPosition() {
for (int i = 0; i < numberOfRows; i++) {
for (int n = 0; n < board[i].length; n++) {
if (board[i][n] == '&') {
break;
}
}
}
return i;
}
为什么找不到符号?
i
不在 循环之后的范围内。 return
当你找到它时,并处理没有用标记找到该字符的情况(比如 -1
)。并且,如所写,break
仅适用于 inner 循环 (因此,如果我们通过增加 i
可见例如,它的范围)然后 return
numberOfRows
随着 i
递增直到那时。所以,我认为你真的想要
public static int getCurrentYPosition() {
for (int i = 0; i < numberOfRows; i++) {
for (int n = 0; n < board[i].length; n++) {
if (board[i][n] == '&') {
return i;
}
}
}
return -1;
}
请注意,您也可以使用 for-each
循环编写它,例如
for (int i = 0; i < numberOfRows; i++) {
for (char ch : board[i]) {
if (ch == '&') {
return i;
}
}
}
return -1;