java缓冲流和普通流的区别_关于java:数据输入/输出流和缓冲的输入/输出流有什么区别?...

让我谨慎地为这篇文章开篇。 我是一个初学者,我真的很想学习和理解做这些事情的最佳方法。 除了我的首要问题,在什么情况下可以使用DataInput/OutputStream和BufferedInput/ouputStream? 谢谢

重复:stackoverflow.com/questions/1830698/

另请参阅:stackoverflow.com/a/9805247/2206044

stackoverflow.com/a/8921601/2194456和way2java.com/io/bufferedinputstream-and-bufferedoutputstream

DataInputStream处理二进制数据,而BufferedReader处理字符数据。

可以使用DataInputStream类中的相应方法来处理所有原始数据类型,而只能从BufferedReader类读取字符串数据,并且需要将它们解析为相应的原始数据。

DataInputStream是过滤流的一部分,而BufferedReader不是。

DataInputStream消耗的内存空间较少,因为它是二进制流,而BufferedReader消耗的内存空间更多,因为它是字符流。

DataInputStream中限制了要处理的数据,因为BufferedReader中要处理的字符数范围很广。

感谢您的深刻见解。 我想我现在开始了解。

DataInput / OutputStream用于将诸如原语(int,boolean等)的数据读/写到文件中。

BufferedInput / ouputStream是提高性能的包装器。

实际上,您可以像这样同时使用它们:

其背后的整个设计是装饰图案。您可以使用多个其他装饰器(例如ObjectOutputStream)作为包装器。

也感谢您的深刻见解。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值