梗概:

  • 流就是一个数据集合, 其中的数据会随着取出而得到新的数据
  • 流就类似于水管中的一小节水, 流出旧的水, 又会流入新的水
  • 流可以理解为缓冲区

1. 流的基本概念:

1. 方向:

流一般具有方向, 且一般是单向的

  1. 读取流
  2. 写入流 而双向的流一般就是两个独立的单向流集合在一起

1.1. 源和目标

类似于水管一头所接的水桶

  1. 源为读取流提供数据流
  2. 写入流将数据流按顺序汇聚到目标中

2. 数据单位:

流中最小的数据单位 流通常包含多个数据单位 对指定数据单位的流的操作, 都是针对一个一个数据单位来操作的

2.1. 常见的数据单位:

  1. child::
  2. child::字节
  3. child::字符
  4. 整形 Int

3. 容量:

流会保持数据单位的数量在容量值

  1. 当读取流中数据没有达到容量值, 就不断从源读取数据单位, 填充进流中
  2. 当写入流中数据没有达到容量值, 就允许吸入数据单位, 填充进流中

4. 流之间的连通:

流之间可以流通

  1. 一个流的源或目标可以是另一个流

实际应用