Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/396.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用BufferedReader在java中获取输入_Java - Fatal编程技术网

使用BufferedReader在java中获取输入

使用BufferedReader在java中获取输入,java,Java,到目前为止,我一直在使用Scanner对象接收输入,并希望了解BufferedReader是如何工作的。我试过了,它似乎只对字符串有效。有人能告诉我如何使用整数和双精度吗?你如何要求在同一行上输入两个字符串?谢谢。是的,bufferedreader只接受字符串。您需要使用Integer.parseInt(value)或double将它们转换为int或double。parseDouble(value)BufferedReader基本上将输入流作为参数 您必须使用内置方法将字符串解析为int和dou

到目前为止,我一直在使用Scanner对象接收输入,并希望了解BufferedReader是如何工作的。我试过了,它似乎只对字符串有效。有人能告诉我如何使用整数和双精度吗?你如何要求在同一行上输入两个字符串?谢谢。

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

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

您必须使用内置方法将字符串解析为
int和double

比如:

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);

可以将
BufferedReader
Scanner
看作是处于不同的抽象级别,而不是“做相同事情”的可互换部分。我认为这是您需要解决的基本问题

BufferedReader
在某种意义上比
Scanner
更“简单”
BufferedReader
只读取
String
s

Scanner
BufferedReader
更健壮。它有API,可以轻松提取各种类型的对象


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

好的,那么如何在同一行上请求两个字符串输入?使用Scanner,您可以使用scan.next()函数,但使用BufferedReader?ThanksLines是根据“\n”来区分的,它是enter。您能告诉我如何在同一行上请求两个字符串输入吗?感谢+1
用大锤杀死蚂蚁
。这对蚂蚁和锤子来说都不好玩。