黑马程序员技术交流社区

标题: IO流缓冲区的一点疑问 [打印本页]

作者: 15001162522    时间: 2015-10-7 14:09
标题: IO流缓冲区的一点疑问
无论是字符流还是字节流,都有方法:read(T[] buf)和write(T[] buf,0,len)
求问,既然已经有了字符数组或字节数组作为缓冲区,为什么还要出现BufferedReader BufferedWriter BufferedInputStream BufferedOutputStream 这四个缓冲区类?
作者: 李克强001    时间: 2015-10-7 16:28
底层IO 访问是个慢操作,减少 IO 次数就是提高效率。
我理解的是:Read类的read(T[] buf)方法还是每次读取一个,然后存入到数组中,
而BufferedRead是一次读取一个数组的内容,存入到数组当中。
作者: 狮子王    时间: 2015-10-7 21:01
更加高效呀!
作者: 915816106    时间: 2015-10-7 21:53
这几个是高效的,速度更快,你可以试试,复制一张图片,分别用这几种方法,高效流速度更快
作者: 15001162522    时间: 2015-10-11 17:36
李克强001 发表于 2015-10-7 16:28
底层IO 访问是个慢操作,减少 IO 次数就是提高效率。
我理解的是:Read类的read(T[] buf)方法还是每次读取 ...

我的潜意识中跟你理解是一样的 ····
作者: 15001162522    时间: 2015-10-11 17:37
915816106 发表于 2015-10-7 21:53
这几个是高效的,速度更快,你可以试试,复制一张图片,分别用这几种方法,高效流速度更快 ...

你回答的只是现象 而非原理  算了,最底层的东西不要去想啦 ,没必要
作者: 莫盛强    时间: 2015-10-11 18:11
其实不要想得太复杂。学习视频就已经说得很清楚,小文件看不出效果,自己动手比较这几个类,IO个avi就懂了。
作者: 915816106    时间: 2015-10-12 22:40
15001162522 发表于 2015-10-11 17:37
你回答的只是现象 而非原理  算了,最底层的东西不要去想啦 ,没必要

你只要知道这个是什么用的就可以了。干嘛要知道他的原理
作者: 15001162522    时间: 2015-10-13 19:13
915816106 发表于 2015-10-12 22:40
你只要知道这个是什么用的就可以了。干嘛要知道他的原理

是的 会用就行了 不能深究  




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2