小编典典

Java控制台输入

java

通过控制台进行任何输入的数据类型(如我使用BufferedReader类所做的那样)为String。之后,我们将其类型转换为需要查询的数据类型(如Inter.parseInt()为整数)。但是在C语言中,我们可以接受任何输入原始数据类型,而在Java中,所有输入类型都是Neccerily
String。为什么是这样?


阅读 440

收藏
2020-11-26

共1个答案

小编典典

控制台输入实际上以一系列字节而不是字符串的形式读入。这是因为System.inAPI公开为InputStream。JDK1.5之前的典型包装(对于Scanner该类万岁!)是这样的:

BufferedReader in = new BufferedReader(new InputStreamReader(System.in));

InputStreamReader字节流转换为字符流,然后将BufferedReader被用来做你的readLine()作业,或什么的。

所以这是一个String输出,因为你从你得到一个字符流的缓冲输出BufferedReader

2020-11-26