标签: java
我有一个机器人程序来测试我的服务器。如果按任何键,我希望它退出循环,但不要让它停止并等到按键被按下。因此,循环将继续运行,直到键盘上的任何键被按下。
这就是我现在尝试这样做的方法,但不起作用
if (System.in.available()>0) { System.out.println("key pressed"); break; // exit loop }
答案 0 :(得分:1)
您的选择是:
创建GUI窗口。您可以通过键事件监听器从awt / swing窗口接收异步键事件。
请参阅上一个回答here中的代码示例。
在程序中创建单独的线程,等待按下回车键,然后发出主循环线程的信号结束。
使用本地库,如jInput或jLine(或使用jni / jna编写您自己的简单等效文件)。
这允许您挂钩到本机操作系统的异步键处理,尽管如此,首先存在对窗口系统的微妙依赖。