开发者

java console input

The data type of the any input through console (as i do using BufferedReader class) is String.After that we type cast it to requered data type(as Inter.parseInt() for integer).But in C we can take input of any primitive data type whereas in java all input types are necceril开发者_StackOverflowy String.why it is so????


Console input is actually read in as a series of bytes, not a String. This is because System.in is exposed by the API as an InputStream. The typical wrapping before JDK1.5 (hooray for the Scanner class!) was something like:

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

i.e. InputStreamReader converts the byte stream into a character stream and then the BufferedReader is used to do your readLine() operations, or whatever.

So it's a String output because you're getting the buffered output of a character stream from your BufferedReader.


In java you can do:

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

etc. You just need to make sure the next input is correct.

EDIT: Missed the Buffered Reader part. I think this answer is totally irrevelant.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜