Java Tutorials中的代码显示了使用DataOutputStream类和DataInputStream类的示例.
代码片段如下所示:
//..
out = new DataOutputStream(new BufferedOutputStream(new FileOutputStream(dataFile)));
//..
in = new DataInputStream(new BufferedInputStream(new FileInputStream(dataFile)));
//..
Run Code Online (Sandbox Code Playgroud)
我想知道为什么BufferedOutputStream在我们创建一个新的时候需要创建一个新的DataOutputStream?
这不是多余的,因为这个替代方案也有效吗?:new DataOutputStream(new FileOutputStream(dataFile));
正如此页面声称的那样,DataStreams已经提供了缓冲文件输出字节流.那么"双缓冲"真的需要吗?
我已经修改了两行代码(输出和输入)的收走了BufferedOutputStream,并BufferedInputStream和一切似乎都工作得很好,所以我想知道什么是的目的BufferedOutputStream和BufferedInputStream?
在BufferedOutputStream中包装FileOutputStream通常会加快程序的整体输出速度.只有在编写大量数据时才会注意到这一点.在BufferedInputStream中包装InputStream也是一样的.缓冲区的使用只会影响效率,而不会影响正确性.
| 归档时间: |
|
| 查看次数: |
9250 次 |
| 最近记录: |