System.out.print(“ Calculator”)紧随其后的是在IntelliJ IDEA中采用System.in的Scanner或BufferReader时,不显示输出

问题描述 投票:0回答:2

所以我想做一个命令行计算器,在“ Calculator”一词后加几个参数。但是使用以下代码,我无法实现它。在这两种方法中,gradle在显示单词“ Calculator”之前都等待读取该行。

使用扫描仪

System.out.print("Calculator ");
Scanner sc = new Scanner(System.in);
String inputString;
inputString = sc.nextLine();
String[] args = inputString.split( "\\s+" );

使用BufferReader

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.print("Calculator ");
String str= br.readLine();
String[] args = str.split( "\\s+" );

但是System.out.println(“ Calculator”)显示该单词没有任何问题。但这不符合要求。所以它不能按我的意愿工作。更改代码行的顺序也无济于事。

System.Console()。printf()也不是一个选项,因为我正在使用Intellij IDEA。因此,有人可以帮我这个忙,以便获得嵌入式输入阅读器。我还尝试通过在一个方法中单独实现它来同步打印方法。那也没有用。

最后我要实现的是以下格式

计算器 最大12 23 25 45

  • 斜体是要读取的输入。
  • 粗体应由程序打印。
java intellij-idea system.out system.in
2个回答
0
投票

完成任何输出后,请在开始处理输入之前先调用System.out.flush()。 IDE正在通过管道连接到进程,并且不会在每个输出上自动刷新到管道。


0
投票

应该使用sc.next()代替sc.nextLine()

© www.soinside.com 2019 - 2024. All rights reserved.