A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

ByteArrayLnputStream与ByteArrayOutputStream怎么理解这两个类的应用?ByteArrayLnputStream与byte[]数组存储数据有什么区别?

2 个回复

倒序浏览
ByteArrayInputStream 里面包含有一个内部缓冲区,这个缓冲区是从流中读取字节。并且这个类中的方法在关闭此流后仍然可以被调用,并且不会产生任何 IOException。
ByteArrayOutputStream实现了一个输出流,其中的数据被写入一个 byte 型的数组。注意:这个缓冲区会随着数据的不断写入而自动增长。
ByteArrayLnputStream和byte[]数组存储数据最大的区别应该是前者的容量会随着数据的写入而不断增大,而后者在定义的时只要确定好了长度
后就不能再变化了,这也是数组的一个缺点;当然,相对的数组也有它的优点,比如:数组会自动生成对应的下标,那么在查询、调用元素等操作时就会非常方便。
回复 使用道具 举报
ByteArrayInputStream类与ByteArrayOutputStream类的实例在内存中有缓冲区,它们的作用类似我们说的临时文件,数据读写不需要在访问磁盘等外部设备在内存中就可以完成,这样大大的提高了程序的运行效率。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马