使用BufferedReader在java中获取输入

时间:2012-01-25 00:40:55

标签: java

到目前为止,我一直在使用Scanner对象接收输入,并想了解BufferedReader的工作原理。我试过了,它似乎只适用于Strings。有人可以告诉我如何使用它与int和double?并且你如何在同一行上要求两个String输入?感谢。

3 个答案:

答案 0 :(得分:7)

BufferedReaderScanner视为处于不同的抽象层次,而不是“做同样事情”的可互换部分。我认为这是你陷入困境的根本问题。

BufferedReader在某种意义上比Scanner“更简单”。 BufferedReader只是阅读String

ScannerBufferedReader强大得多。它具有API,可以轻松提取各种类型的对象。

我可以想象使用Scanner作为底层构建块编写BufferedReader。而使用Scanner来编写BufferedReader就好像用大锤杀死一只蚂蚁。

答案 1 :(得分:2)

是的,bufferedreader将只使用字符串。你需要使用Integer.parseInt(value)或Double.parseDouble(value)将它们转换为int或double。

答案 2 :(得分:1)

BufferedReader基本上将输入流作为参数。

您必须使用内置方法将字符串解析为ints and doubles

喜欢:

BufferedReader br = new BufferedReader(new FileReader("input1.txt"))
String line = br.readLine();
//more logic here

 int number = Integer.parseInt(brstring);
 double number = Double.parseDouble(brstring);