java控制台输入

时间:2010-05-25 04:45:04

标签: java

通过控制台输入的任何数据类型(就像我使用BufferedReader类一样)是String.After之后我们输入它来重新排列数据类型(作为整数的Inter.parseInt())。但是在C中我们可以采取输入任何原始数据类型,而在java中所有输入类型都是String.Why它是如此????

2 个答案:

答案 0 :(得分:5)

控制台输入实际上是作为一系列字节读入的,而不是字符串。这是因为System.in由API公开为InputStream。 JDK1.5之前的典型包装(对Scanner类来说很好!)就像:

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

即。 InputStreamReader将字节流转换为字符流,然后BufferedReader用于执行readLine()操作,或其他任何操作。

所以它是String输出,因为你从BufferedReader获得了字符流的缓冲输出。

答案 1 :(得分:3)

在java中你可以这样做:

Scanner scan = new Scanner(System.in);
scan.nextInt();
scan.nextDouble();

等。您只需要确保下一个输入是正确的。

编辑:错过了缓冲读卡器部分。我认为这个答案完全没有用。