在Java中输入

SQR*_*SQR 2 java user-input input

如果有人能提供帮助我会有些困惑.尝试在网上搜索它但没有得到任何令人满意的答案.

为什么System.in.somemethod()我们不像在输出中那样只使用Java输入?喜欢System.out.println()使用,为什么不System.in这样呢?为什么输入有一个很长的过程?

Swe*_*per 5

System.ina InputStream,提供的唯一方法是重载read.当然,你可以这样做:

    byte[] bytes = new byte[5];
    System.in.read(bytes);
    System.out.println(Arrays.toString(bytes));
Run Code Online (Sandbox Code Playgroud)

从控制台读取五个字节.但这有以下缺点:

  • 你需要处理检查IOException.(未在上面的代码段中显示)
  • 很难处理字节.(除非你特别想要它们)
  • 您通常只想读取输入直到行尾.有了它,很难知道一条线的末端在哪里.

这就是为什么人们使用Scanners将System.in流包装成更加用户友好的东西.