Java InputStream、BuffreReadInputStream、InputStreamReader和BufferedReader之间的关系是什么?
我总是弄不清楚什么时候处理我的输入数据,如何处理,哪个处理。不同的时候,我会找到不同的解决方案。我也不清楚他们的等级制度 InputStream是所有输入流和读取器的父类。具有Stream关键字的类将使用字节,而具有Reader关键字的类将使用字符。Java InputStream、BuffreReadInputStream、InputStreamReader和BufferedReader之间的关系是什么?,java,inputstream,bufferedreader,bufferedinputstream,Java,Inputstream,Bufferedreader,Bufferedinputstream,我总是弄不清楚什么时候处理我的输入数据,如何处理,哪个处理。不同的时候,我会找到不同的解决方案。我也不清楚他们的等级制度 InputStream是所有输入流和读取器的父类。具有Stream关键字的类将使用字节,而具有Reader关键字的类将使用字符。 缓冲区是这些流的包装器,用于减少系统调用并提高性能和读取速度。非缓冲流每次返回单字节,而缓冲流在缓冲区满之前不会返回。例如,如果您使用BufferedReader,您可以使用readLine读取整行,但在非缓冲流中,您必须使用read方法读取单个字
缓冲区是这些流的包装器,用于减少系统调用并提高性能和读取速度。非缓冲流每次返回单字节,而缓冲流在缓冲区满之前不会返回。例如,如果您使用BufferedReader,您可以使用readLine读取整行,但在非缓冲流中,您必须使用read方法读取单个字符。您能更具体一点吗?你想知道什么?InputStream读取字节,Reader读取字符。任何以Buffered开头的东西都使用缓冲区。有时输入是用inputStream只读的,有时我发现BufferedInputStream是为了读取输入而创建的。我想知道什么时候用什么,为什么?如果它们之间有任何关系。inputStream->readByte inputStreamReader->直接读取charou u可以同时说inputStream 8bit。BufferedInputstream->readBytes only,但要填充缓冲区,以减少系统调用。非常感谢。每次我到处寻找这些东西,他们都会解释它的实现,而不是我为什么要使用它。