Bufferedreader解释?

BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 

System.in(Standard input stream)-以字节为单位从键盘获取输入

InputStreamReader:将字节转换为Unicode字符/将标准输入转换为读取器对象以与BufferedReader一起使用

Finally BufferedReader :用于从字符输入流中读取(输入流读取器)

String c = br.ReadLine(); – 一种用于从输入流中读取字符并将其一次性放入字符串中的方法,而不是逐字节。

一切都在正确吗? 如果有什么不对请更正!

几乎在那里,但是这个:

String c = br.readLine(); – 一种用于从输入流中读取字符并将其一次性放入字符串中的方法,而不是逐字节。

它从输入阅读器读取字符( BufferedReader不知道流)并一次返回整行,而不是逐个字符 。 在层中考虑它,并且在InputStreamReader层“之上”,“bytes”的概念不再存在。

另外,请注意您可以使用Reader读取字符块而不读取行: read(char[], int, int)readLine()的点是它将为您执行行结束检测。

(如评论中所述,它也是readLine ,而不是ReadLine 🙂

BufferedReader的目的是什么,解释?

Bufferedreader是一个java类,以下是这个类的层次结构。

java.lang.Object ==> java.io.Reader ==> java.io.BufferedReader

此外,BufferedReader提供了一种有效的方式来阅读内容。 非常简单..让我们看看下面的例子来理解。

 import java.io.BufferedReader; import java.io.FileReader; public class Main { public static void main(String[] args) { BufferedReader contentReader = null; int total = 0; // variable total hold the number that we will add //Create instance of class BufferedReader //FileReader is built in class that takes care of the details of reading content from a file //BufferedReader is something that adds some buffering on top of that to make reading fom a file more efficient. try{ contentReader = new BufferedReader(new FileReader("c:\\Numbers.txt")); String line = null; while((line = contentReader.readLine()) != null) total += Integer.valueOf(line); System.out.println("Total: " + total); } catch(Exception e) { System.out.println(e.getMessage()); } finally{ try{ if(contentReader != null) contentReader.close(); } catch (Exception e) { System.out.println(e.getMessage()); } } } }