我的代码出现错误,
BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
System.out.print("a = ");
int a=in.read();
System.out.print("b = ");
int b=in.read();
System.out.print(" = "+a);
System.out.print("b = "+b);
我尝试输入1, 我不明白为什么结果是这样的?
a = 1
b = = 49b = 13
第二个输入去哪里了?
最佳答案
你可以尝试这样的事情:
a = in.readLine();
System.out.print("b = ");
String b=in.readLine();
int aInt = Integer.valueOf(a);
int bInt = Integer.valueOf(a);
System.out.print("a = "+aInt);
System.out.print("b = "+bInt);
read()
逐字符读取,因此换行符将被计为新字符。要了解更多信息,您可以阅读 here .
关于java - 为什么 java BufferedReader 会丢失输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40873276/