java读取从键盘输入的值的问题……
发布网友
发布时间:2022-04-25 23:36
我来回答
共4个回答
热心网友
时间:2023-07-14 18:31
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));这句是实例化一个BufferedReader的对象br.而BufferedReader是一个包装流,原型是InputStreamReader,因此括号里面写的是它.InputStreamReader需要一个读取源,这里的读取源是从键盘也就是从系统输入流也就是System.in.
所以这句完整的意思就是获取系统输入流System.in也就是从键盘输入的内容作为InputStreamReader的源,并对InputStreamReader进行包装变成BufferedReader.然后获取包装好的BufferedReader的一个实例化对象.
throws IOException是必须的,因为在使用流的时候具有不确定性,会造成很多的异常.而且这些异常是java本身不可控的也就是说并不是编译时异常.因此java在编译的时候并不会发现这些异常,所以需要你手动的去抛出异常以便将来可以捕获到异常并去处理它们.这算是介于中间的形式,笼统一点的你可以直接抛一个Exception不具体到什么异常.一般都是会以try catch的形式来捕获异常,具体到哪几行代码出现的异常都是可以捕获到的.
热心网友
时间:2023-07-14 18:31
System.io 是一个 InputStream, InputStreamReader把它一个Reader,再加上缓冲 BufferedReader(为了readLine方法)
IO操作都会抛出 IOException
现在读键盘输入使用Scanner类
Scanner scanner = new Scanner(System.io);
while(scanner.hesNextLine())
String s = scanner.nextLine();
热心网友
时间:2023-07-14 18:31
1、System.in 读取系统输入流
2、new InputStreamReader(System.in)将系统输入流包装成为输入流读取器,用来读取字符类型数据
3、
new BufferedReader(new InputStreamReader(System.in)) 再次将输入流包装成为可缓存的读取器,可以提供一些方便的读取方法,例如:readLine()
4、因为在步骤2的时候,可能发生IO异常,导致读入信息错误,所以要抛出 IOException
热心网友
时间:2023-07-14 18:32
楼下的是System.in 吧。