既然PrintWriter已经自带缓冲功能,为什么还要把BufferedWriter包装起来用?

netepic 2016-08-30 09:26:42
这是API给的建议写法: PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter("foo.out")));
请问既然PrintWrite已经能自带缓冲了,为什么还要包装一个缓冲流?
如果写成: PrintWriter out = new PrintWriter(new FileWriter("foo.out")); 这样在性能上有什么区别?
...全文
392 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhjdg 2016-08-31
  • 打赏
  • 举报
回复
很明显,没有
dzq584462393 2016-08-31
  • 打赏
  • 举报
回复
因为PrintWriter 有更多的功能
静默QL 2016-08-30
  • 打赏
  • 举报
回复
首先,PrintWriter 具有的缓冲是继承Writer来的,就是1024个字节,而BufferedWriter虽然也继承了Writer, 但他本类有专门定义字节的属性,能容纳8192 个字节。 很明显,用BufferedWriter 能够提速。 用PrintWriter ,主要是用他的print系列的方法。具体你看下源码。

62,628

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧