new InputStreamReader(System.in)什么意思
时间: 2024-02-02 20:04:42 浏览: 66
`new InputStreamReader(System.in)` 表示创建一个新的字符流读取器,用于从标准输入流(System.in)读取输入数据。
在Java中,标准输入流(System.in)是一个InputStream类型的对象,用于读取输入的字节流。而InputStreamReader是一个字符流读取器,它可以将字节流转换成字符流,因此我们可以通过将标准输入流包装在InputStreamReader中,来实现从控制台读取输入的字符流。
例如,下面的代码就可以通过InputStreamReader读取控制台输入的数据:
```java
try {
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
br.close();
isr.close();
} catch (IOException e) {
e.printStackTrace();
}
```
在上述代码中,我们创建了一个InputStreamReader对象,用于将标准输入流(System.in)中的字节流转换成字符流。然后,我们将该对象传递给BufferedReader的构造方法,创建一个缓冲字符输入流,用于读取控制台输入的字符流。最后,我们使用BufferedReader的readLine()方法读取输入的每一行字符,并将其输出到控制台上。
阅读全文