这几天我也在思考这问题,BufferedReader是FileReader的修饰类,功能增强了提供了readLine()方法,但是说使用BufferedReader可以提高效率,我一直比较困惑,是在哪里实现的?刚重新看了api,发现BufferedReader有定义一个缓冲数组,并且在提供了一个构造函数可以指定数组的大小。我觉得这在原理上和我们自己定义一个缓冲数组是没有区别。BufferedReader也是的read方法和FileReader中的read方法应该是有所不同的,应该先判断缓冲区中是否还有数据,如果有就直接读了,没有再将新的文件数据读到缓冲区中。 |