通过控制台输入的任何数据类型(就像我使用BufferedReader类一样)是String.After之后我们输入它来重新排列数据类型(作为整数的Inter.parseInt())。但是在C中我们可以采取输入任何原始数据类型,而在java中所有输入类型都是String.Why它是如此????
答案 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();
等。您只需要确保下一个输入是正确的。
编辑:错过了缓冲读卡器部分。我认为这个答案完全没有用。