繁体   English   中英

如何在Java中使用switch case使其无需按回车键即可接受字符?

[英]How to use switch case in java such it accepts the character without pressing enter?

嗨,我是stackoverflow.com的新手,出于编程目的,我最近一直在使用JAVA。 我有一个使用开关盒的代码,效果很好。 这是代码:

Scanner s=new Scanner(System.in);
int i=1;
while(i>0)
{
    char key = s.next().charAt(0);
    switch(key)
    {
      case 'w':
        System.out.println("I am moving forward");
        break;
      case 's':
        System.out.println("I am moving backward");
        break;
      case 'd':
        System.out.println("I am moving right");
        break;
      case 'a':
        System.out.println("I am moving left");
        break;
      case 'x':
        i=-1;
        break;
      default:
        System.out.println("Plz give a valid command");
    }
}

但是问题是每次我给出输入命令时,我都必须按Enter键,这样程序才能接受输入。 我需要一种方法,程序在输入字符后立即应接受该命令。 有什么提示吗???

我认为,您必须处理键盘事件,例如keyTyped(KeyEvent e){}而不是Scanner(System.in); 您可以通过实现KeyListener接口来实现。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM