java中自定义的数组缓冲区和带BufferedInputStream 或者BufferedWriter有什么区别 5
比如我可以自定义一个数组啊为什么还要用BufferedInputStream,BufferedWriter为什么要刷新缓冲区,而字节流不用,忘细讲...
比如我可以自定义一个数组啊为什么还要用BufferedInputStream ,BufferedWriter为什么要刷新缓冲区,而字节流不用,忘细讲
展开
3个回答
展开全部
个人觉得是这些做法反映了对数据处理方法的进步和发展。
用直接byte[]是最基础的或者叫最原始的方法,等于从0开始,自己发明轮子。
各种Stream,Reader,Writer,Scanner,Printer等属于对一些常规I/O处理的便捷化,也是在实践中形成的针对特定情况的较佳方案。有了常用的一些轮子,运东西方便。各种Stream属于Java的标准IO库。
到了Java 5之后出现了新IO库(NIO)。针对现在大容量文件、大数据量读写、并行多线程读写提供了进一步的方便性工具,等于直接提供有轮子的车让你搬东西。
具体用哪个好,取决于具体场合,和你对基础知识和工具的驾驭能力。
对于复杂电磁环境下的作战,不能老重复发明轮子。
对于做日常小菜,杀鸡也不宜用牛刀。
Writter和Reader是针对字符char组成的字符串的
而基本的Stream是针对字节byte组成的字节流、字节串。
用直接byte[]是最基础的或者叫最原始的方法,等于从0开始,自己发明轮子。
各种Stream,Reader,Writer,Scanner,Printer等属于对一些常规I/O处理的便捷化,也是在实践中形成的针对特定情况的较佳方案。有了常用的一些轮子,运东西方便。各种Stream属于Java的标准IO库。
到了Java 5之后出现了新IO库(NIO)。针对现在大容量文件、大数据量读写、并行多线程读写提供了进一步的方便性工具,等于直接提供有轮子的车让你搬东西。
具体用哪个好,取决于具体场合,和你对基础知识和工具的驾驭能力。
对于复杂电磁环境下的作战,不能老重复发明轮子。
对于做日常小菜,杀鸡也不宜用牛刀。
Writter和Reader是针对字符char组成的字符串的
而基本的Stream是针对字节byte组成的字节流、字节串。
展开全部
所有OutputStream和Writer的子类都有flush的
用数组当然也可以实现缓冲区,这也正是BufferedOutputStream和BufferedWriter做的,它只不过封装好方便使用,模块化隐藏细节,给上层调用者一个统一调用接口
用数组当然也可以实现缓冲区,这也正是BufferedOutputStream和BufferedWriter做的,它只不过封装好方便使用,模块化隐藏细节,给上层调用者一个统一调用接口
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个可以去baidu 文库你面去看看应该有好多啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询