0
当某个键被按下时,我该如何停止一个循环。我想创建一个平均值计算器,您在输入数字时会给出平均值。输入的数字。但是,当用户输入完所有需要的数字后,我需要停止计数器。循环直到按下一个键Java
当某个键被按下时,我该如何停止一个循环。我想创建一个平均值计算器,您在输入数字时会给出平均值。输入的数字。但是,当用户输入完所有需要的数字后,我需要停止计数器。循环直到按下一个键Java
您可以随时收听Java中的KeyEvent
。
这是一个示例代码,
import java.awt.KeyEventDispatcher;
import java.awt.KeyboardFocusManager;
import java.awt.event.KeyEvent;
public class IsKeyPressed {
private static boolean wPressed = false;
public static boolean isWPressed() {
synchronized (IsKeyPressed.class) {
return wPressed;
}
}
public static void main(String[] args) {
KeyboardFocusManager.getCurrentKeyboardFocusManager().addKeyEventDispatcher(new KeyEventDispatcher() {
@Override
public boolean dispatchKeyEvent(KeyEvent ke) {
synchronized (IsKeyPressed.class) {
switch (ke.getID()) {
case KeyEvent.KEY_PRESSED:
if (ke.getKeyCode() == KeyEvent.VK_W) {
wPressed = true;
}
break;
case KeyEvent.KEY_RELEASED:
if (ke.getKeyCode() == KeyEvent.VK_W) {
wPressed = false;
}
break;
}
return false;
}
}
});
}
}
而在你的代码,你可以做到这一点,
if (IsKeyPressed.isWPressed()) {
// do something
}
可以明显扩展为其它键映射了。
你的问题解决了吗?如果是的话,请考虑接受或投票回答此问题。我花了很多时间写出这个详细的答案来帮助你。 –
你可以发布你的代码吗? – Bun
使用分支语句:中断,继续或返回。更多在这里:https://docs.oracle.com/javase/tutorial/java/nutsandbolts/branch.html – Frankie