不一样的
它类似一个内存虚拟文件或内存映像文件,它默认是32个字节的缓冲区,但是可随着数据增多自动增长
它可以存储整个输入或输出流,可以对内容进行很多操作
BufferedInputStream也是增加了内存缓冲区,但是目的是能允许Java程序可以一次不只操作一个字节,可以实现数据部分回流(可进行mark,skip等方法,readLine也成为可能),但是size一般定下来也变不了了
我个人是把ByteArrayInputStream想象成一个文件,不在硬盘上的。
把BufferedInputStream想象成一个定长管道,它可以操作很多个字节,但是不能当成整个文件那样操作
如果错误理解还请指出 |