如何解决在Intellij之外运行代码时输入流中的额外值
因此,我试图查看流在Java中的工作方式,并编写了一些代码,该代码应采用2个1位数的整数并返回其和。
这是intellij中的工作代码:
public class practice {
public static void main(String[] args) throws IOException {
int x = Character.getNumericValue((char)System.in.read());
System.in.read(); // reads the -1 so that input stream is now empty
int y = Character.getNumericValue((char)System.in.read());
System.out.println(x+y);
}}
这是intellij之外的,Eclipse或其他形式的工作代码:
public class practice {
public static void main(String[] args) throws IOException {
int x = Character.getNumericValue((char)System.in.read());
System.in.read();
System.in.read();
int y = Character.getNumericValue((char)System.in.read());
System.out.println(x+y);
}}
我不得不添加一个额外的System.in.read(),以某种方式在流中存在另一个值,为了检查该值,我将该值打印到了控制台上,并获得了值为13的值,该值与一个ASCII表中的“回车”,什么是回车,为什么在intellij中不出现这种情况?
感谢您的帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。