如果要求輸入與輸出的一致的話:通常情况下,你会用readLine( )一行一行地读取输入,因此要把System.in包装成BufferedReader。但在这之前还得先用InputSteamReader把System.in转换成Reader。BufferedReader in = new BufferedReader(new InputStreamReader(System.in));int a = Integer.parseInt(in.readLine());//强制转换为需要的类型
为什么要把
InputSteamReader把System.in转换成Reader。这句有是做什么的:
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));请高手尽量解释的详细点,谢谢了
为什么要把
InputSteamReader把System.in转换成Reader。这句有是做什么的:
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));请高手尽量解释的详细点,谢谢了
:
System.in 返回InputStream——字节流
InputStreamReader 是字节流通向字符流的桥梁:
BufferedReader代缓冲的字符流。
我们想用readLine()方法,BufferedReader提供了这个方法,而System.in返回的是InputStream,所以我们用InputStreamReader把字节流转换成字符流,再利用BufferedReader(Reader)构造方法生成BufferedReader.
就是这样