读取任意键以继续Java

读取任意键以继续Java,java,key,Java,Key,如何在Java中实现按任意键继续。在C中,我使用getch(),它工作得很好,但在Java中,我必须在每个OutputStream类的每个读取方法实现中按enter键 提前感谢。我找到的唯一方法是使用JNI和C。我找到了一个代码,相当于C的“\u getch() 我已经给出了这个问题的答案,请看我的答案 或者使用代码 公共静态void getCh(){ 最终JFrame=新JFrame(); 已同步(帧){ 框架。设置未装饰(真); frame.getRootPane().setWindowD

如何在Java中实现按任意键继续。在C中,我使用getch(),它工作得很好,但在Java中,我必须在每个OutputStream类的每个读取方法实现中按enter键


提前感谢。

我找到的唯一方法是使用JNI和C。

我找到了一个代码,相当于C的“\u getch()

我已经给出了这个问题的答案,请看我的答案

或者使用代码

公共静态void getCh(){
最终JFrame=新JFrame();
已同步(帧){
框架。设置未装饰(真);
frame.getRootPane().setWindowDecorationStyle(JRootPane.frame);
frame.addKeyListener(新的KeyListener(){
按下公共无效键(按键事件e){
已同步(帧){
frame.setVisible(false);
frame.dispose();
frame.notify();
}
}

公开无效密钥已释放(密钥事件e){ } public void keyTyped(KeyEvent e){ } }); frame.setVisible(true); 试试{ frame.wait(); }捕获(中断异常e1){ } } }
如果您使用的是windows,则可以使用以下代码

newprocessbuilder(“cmd”、“/c”、“pause”).inheritIO().start().waitFor();
并导入以下包

import java.io.IOException;
把主要功能改成这个

publicstaticvoidmain(字符串args[])抛出IOException、interruptedeexception

这里已经提到了这个控制台还是桌面应用程序?我看到了这个问题,但我想知道没有JNI怎么做?它是一个控制台应用程序。

public static void getCh() {
final JFrame frame = new JFrame();
synchronized (frame) {
frame.setUndecorated(true);
frame.getRootPane().setWindowDecorationStyle(JRootPane.FRAME);
frame.addKeyListener(new KeyListener() {
public void keyPressed(KeyEvent e) {
synchronized (frame) {
frame.setVisible(false);
frame.dispose();
frame.notify();
}
}

public void keyReleased(KeyEvent e) { } public void keyTyped(KeyEvent e) { } }); frame.setVisible(true); try { frame.wait(); } catch (InterruptedException e1) { } } }