缓冲流
- 缓冲流概述
缓冲流也称为高效流、或者高级流。之前学习的字节流可以称为原始流。
作用:缓冲流自带缓冲区、可以提高原始字节流、字符流读写数据的性能
- 字节缓冲流
字节缓冲流性能优化原理:
●字节缓冲输入流自带了8KB缓冲池,直接从缓冲池读取数据,所以性能较好。
●字节缓冲输出流自带了8KB缓冲池,数据就直接写入到缓冲池中去,写数据性能极高了。
字节缓冲输入流:BufferedInputStream,提高性能,读写功能上并无变化。
字节缓冲输出流:BufferedOutputStream,提高性能,读写功能上并无变化。
- 字节缓冲流的性能分析(案例)
案例需求:分别使用低级字节流和高级字节缓冲流拷贝大视频,记录耗时。
分析:
- 使用低级的字节流按照一个一个字节的形式复制文件。
- 使用低级的字节流按照一个一个字节数组的形式复制文件。
- 使用高级的缓冲字节流按照一个一个字节的形式复制文件。
- 使用高级的缓冲字节流按照一个一个字节数组的形式复制文件。
- 字符缓冲流
字符缓冲输入流BufferedReader类
1.构造方法
public BufferedReader(Read in):创建一个使用默认大小输入缓冲区的缓冲字符输入流。
Public BufferedReader(Reader in,int sz):创建了一个使用指定大小输入缓冲区的缓冲字符输入流。其中 sz指输入缓冲区的大小,如果sz<=0,则抛出IllegalArgumentException.
字符缓冲输出流BufferedWriter类
1.构造方法
Public BufferedWriter(writer out):创建一个使用默认大小输出缓冲区的缓冲字符输出流。
Public BufferedWriter(Writer out,int sz):创建一个使用给定大小输出缓冲区的新缓冲字符输出流。其中 sz指输入缓冲区的大小,如果sz<=0,则抛出IllegalArgumentException.
转换流
序列化对象
打印流
Properties
IO框架
线程: