java中BufferedInputStream类和FileInputStream区别

这个缓冲区的概念比较抽象,其实这么说就明白了

不带缓冲的操作,每读1024个字节就要从存储文件的磁盘当中写入1024个字节(byte[] buffer = new byte[1024]),由于涉及磁盘的IO操作相比内存的操作要慢很多,所以不带缓冲的流效率很低
带缓冲的流,可以一次读很多字节(超过定义的1024个字节),只是先放到内存里,下次再要读取1024个字节就先去缓存里读,不够再到文件中读取,这种方式可以减少磁盘操作次数,速度就会提高很多

你可能感兴趣的:(Java)