【发布时间】:2011-07-12 14:23:02
【问题描述】:
我试图用 Java 制作一个扫雷游戏,但我一直遇到这个错误。此函数将当前方块设置为单击,并将任何相邻的方块设置为单击并递归继续。它应该在用完正方形时停止,但即使我将字段大小设置为 2x2 和 0 个地雷,它也会溢出。
public void setClicked(boolean clicked){
this.clicked = clicked;
if(adjacentMines == 0)
for(mine m : adjacent){
if(!m.isClicked() && !m.isMine()){
setClicked(true); //Should be m.setClicked(true);
}
}
}
问题解决了,我错过了“m”。在我的方法调用中。感谢大家的帮助。
【问题讨论】:
-
与您的问题无关:我认为您可以省略
!m.isMine()检查 - 如果adjacentMines == 0,这不应该发生。
标签: java recursion stack-overflow minesweeper