[请帮助我理解这一点。我想使用BufferedReader中的read()方法输入5个数字。但是,即使我叫了5次,为什么我也不能输入5个数字?
BufferedReader inp = new BufferedReader (new InputStreamReader(System.in));
inp.read();
inp.read();
inp.read();
inp.read();
inp.read();
运行时:(输入这些数字)
1
2
3
退出代码为0的处理完成
预期的输入结果:(只要我可以输入5个数字,任何一个数字都可以)
1
2
3
4
5
退出代码为0的处理完成
这里的诀窍是read
读取字符,而不是行。因此,您从读取中得到1个int,其中包括行结尾。尝试切换到BufferedReader.readline()
。
此外,您还使用术语“循环”,这意味着与调用方法5次不同。