BufferedInputStream(缓冲输入流)详解_动力节点Java学院整理
BufferedInputStream的作用是为其它输入流提供缓冲功能。创建BufferedInputStream时,我们会通过它的构造函数指定某个输入流为参数。执行流程如下,说明:这种情况发生的情况是 ― ― 输入流中有很长的数据,我们每次从中读取一部分数据到buffer中进行操作。当我们读取完buffer中的数据之后,并且此时输入流存在标记时;那么,就发生情况2。注意:执行过情况2之后,markpos的值由“大于0”变成了“等于0”!随着读取次数的增多,buffer会越来越大;这会导致我们占据的内存越来越大。所以,我们需要给出一个marklimit;当buffer>=marklimit时,就不再保存markpos的值了。执行流程如下,为了方便分析,我们将这种情况下fill()执行的操作等价于以下代码:说明:这种情况的处理非常简单。
用户评论