这是一个Java问题。我在KeyListener中挂起的这个“if”语句中运行while循环时遇到了一些麻烦。尝试循环我的rectX - = snakeSpeedY。
有点令人沮丧public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_UP){
AUTO = false; //boolean for automatic movement FYI.
while (snakeMoving == true) {//another boolean, for stoping and moving the snake
rectY -= snakeSpeedY;
}
我想知道“if”语句是否无法处理while循环?我做错了吗?所有反馈都将不胜感激。
编辑:我主要关注这部分代码,因为这是问题发生的地方。我很抱歉不包括“如果”括号。答案 0 :(得分:0)
两件事:
观察关闭括号的位置("}")是 - 它始终是初学者错误的来源,但尤其是在有循环时。您没有关闭&#34的括号;如果"声明。但同样重要的是你在哪里放置它。
循环循环时,应更改条件中使用的变量。无论是在循环内部,还是在更复杂的场景中,在循环运行时在另一个线程上。结束循环的唯一另一种可能性是调用" break;"。你似乎没有做这三个中的任何一个。所以你让自己无限循环。