有没有办法检查用户是否在 Java 控制台窗口中输入?我的程序使用 System.out.print() 打印它收到的有关客户端连接的信息,并且我希望它在用户键入时暂时停止打印信息。使用 Scanner 类在单独的线程上读取用户输入。我需要能够查看用户是否输入了任何内容,并且仍然可以将用户输入的内容(如果有)提供给扫描仪。如果可能的话,我想避免使用外部库,而只使用 java 库。
最佳答案
不,没有办法直接使用控制台(据我所知)来做到这一点 - 控制台的内容只有在按下 Enter 键后才会发送到应用程序,然后可供 扫描仪
。
解决这个问题的一种方法是创建自己的控制台,您可以从中读取和写入。然后您就可以做任何您真正想做的事情(包括检查是否突出显示了任何内容等)。如果您不知道如何编写 GUI,您应该研究一下。 Oracle 有一个tutorial在带有 Swing 的 GUI 上。
关于Java检查用户是否在控制台中输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16629570/