备用br.read()被跳过。如何使它们对编译器可见?

时间:2018-07-07 04:32:10

标签: java input line bufferedreader

Google::APIClient::Request Sending API request get https://www.googleapis.com/discovery/v1/apis/calendar/v3/rest {"User-Agent"=>"hello U/1.0.0 google-api-ruby-client/0.8.2 Mac OS X/10.13.4\n (gzip)", "Accept-Encoding"=>"gzip", "Content-Type"=>""}

,依此类推,直到最后,所有偶数位置的读数都将被忽略,尽管会打印相应的问题。尝试做各种古怪的事情,现在我失去了希望,请帮忙!

1 个答案:

答案 0 :(得分:0)

正如@Jim Garrison所说,这是因为忘记了用户输入的newline (输入)个字符。

解决替换问题

(char)br.read();

使用

(char)br.readLine().charAt(0);

Java中的charAt(index)函数返回存在于相关String的索引位置的字符。在0 th位置,即第一个字符。这将起作用。

所以修改是:-

char choice1 = (char)br.readLine().charAt(0); // Line 5
char choice2 = (char)br.readLine().charAt(0); // Line 16
char choice3 = (char)br.readLine().charAt(0); // Line 27