Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/378.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如果我想在循环条件下使用enter键,我如何检测用户是否按下了enter键(在java中)以及该怎么办?_Java - Fatal编程技术网

如果我想在循环条件下使用enter键,我如何检测用户是否按下了enter键(在java中)以及该怎么办?

如果我想在循环条件下使用enter键,我如何检测用户是否按下了enter键(在java中)以及该怎么办?,java,Java,请帮帮我 我是java新手。我希望我的代码中的特定行必须在按下enter按钮后立即执行。比如:int x=in.nextInt();然后按enter键后,值存储在x中 现在我想在循环中使用这种机制;如果按下Enter按钮,则执行此语句,否则执行其他语句 如果(!按下回车键) { } 否则,如果(空格已按下) { } 现在告诉我应该用java编写什么样的代码 我不想使用侦听器 所以建议我该怎么做?只需阅读一行输入即可。如果您正在从用户输入读取: BufferedReader br = new

请帮帮我

我是java新手。我希望我的代码中的特定行必须在按下enter按钮后立即执行。比如:int x=in.nextInt();然后按enter键后,值存储在x中

现在我想在循环中使用这种机制;如果按下Enter按钮,则执行此语句,否则执行其他语句

如果(!按下回车键)

{
} 否则,如果(空格已按下)

{
} 现在告诉我应该用java编写什么样的代码

我不想使用侦听器


所以建议我该怎么做?

只需阅读一行输入即可。如果您正在从用户输入读取:

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String input = null;
try {
     input = br.readLine();
     //this code will be executed after user pressed enter
} catch (IOException e) {
     //handle exception
}
同样,如果您正在读取文件,只需将System.in更改为您的文件(使用文件对象打开):

如果要区分输入字符(如enter或space),请逐个字符(而不是整行)读取-只需使用read()而不是readLine()-并询问字符的值:

char c = (char)br.read();
if (c == ' ') {
   // this is a space
} else if (c == '\n') {
   // this is a new line (Enter)
}
请注意,“\n”将适用于大多数操作系统,因为Linux仅使用它来标记新行,而Windows使用“\r\n”。如果您也想支持iOS,可以询问字符是否为“\r”(但后面没有“\n”)

char c = (char)br.read();
if (c == ' ') {
   // this is a space
} else if (c == '\n') {
   // this is a new line (Enter)
}