当前位置: 首页 > 知识库问答 >
问题:

Java:解释了流和I/O流之间的区别

糜正业
2023-03-14

我正在寻找Java 8中的“新”流和之前Java 7中的“旧”I/O流之间的区别的一个很好的解释。对于没有任何函数式编程知识的人来说,很难理解它们是完全不同的东西,特别是因为它们的名称是相同的。我知道Stream API是一个全新的东西,在某些方面甚至是革命性的,但在我幼稚的想法中,在这两种情况下,我们都处理“事物”的序列,无论是字节、数据还是对象...

谁能给个很好的解释吗?

共有1个答案

乐正烨熠
2023-03-14

它们之间没有任何关系,我也同意,在“新的”流到来之前,IO流就有了它们的名字,这真是倒霉。I/O流意味着与外部资源(主要是文件)的连接,但也包括其他资源。新的流是用于函数式编程的,应该分开处理。

但实际上可以同时使用这两个概念。例如,BufferedReader有一个lines-method,它将文件(或其他资源)的行作为字符串流返回。

 类似资料:
  • 问题内容: 有许多不同的I / O 流(FileInputStream,FileOutputStream,FileReader,FileWriter,BufferedStreams等),我在确定它们之间的差异时感到困惑。在哪些示例中,一种流类型优先于另一种流类型,它们之间的真正区别是什么? 问题答案: 这是一个大话题!我建议您先阅读I / O流 : I / O流代表输入源或输出目的地。流可以表示许

  • 字节流(Byte Streams) 字节流处理原始的二进制数据 I/O。输入输出的是8位字节,相关的类为 InputStream 和 OutputStream. 字节流的类有许多。为了演示字节流的工作,我们将重点放在文件 I/O字节流 FileInputStream 和 FileOutputStream 上。其他种类的字节流用法类似,主要区别在于它们构造的方式,大家可以举一反三。 用法 下面一例子

  • 在第5章 管理ElasticSearch的 选择正确的directory实现类——存储模块 一节中讲到了存储类型,即用户可以根据业务需求来配置存储模块。但是我们并没有介绍存储模块的每一个知识点——至少没有介绍I/O限流的相关知识。 控制I/O流量

  • 问题内容: 我听到有人说“ JVM一定是Java解释器,但Java解释器不一定是JVM”。真的吗? 我的意思是Java解释器和JVM之间有区别吗? 问题答案: 是,有一点不同。 Java虚拟机: 一种软件“执行引擎”,可安全,兼容地执行微处理器(无论是计算机还是其他电子设备中)的Java类文件中的字节码。 Java解释器: 交替解码并执行某些代码体中的每个语句的模块。Java解释器解码并执行Jav

  • 本文向大家介绍Java 8中流和集合之间的区别,包括了Java 8中流和集合之间的区别的使用技巧和注意事项,需要的朋友参考一下 Java Collections框架用于存储和处理数据组。它是一个内存中的数据结构,应先计算集合中的每个元素,然后才能将其添加到集合中。 Stream API仅用于处理数据组。它不会修改实际的集合,它们仅根据流水线方法提供结果。 序号 键 馆藏 流 1个 基本的 流API

  • 问题内容: 所述流文档状态双工流 “是同时实现可读写接口流”和变换流 “是双相流其中输出以某种方式从输入计算”。不幸的是,文档没有描述Transplex流在Duplex流之外提供的内容。 两者之间有什么区别吗?您什么时候可以使用另一个? 问题答案: 可以将双工流视为具有可写流的可读流。两者都是独立的,每个都有独立的内部缓冲区。读写事件独立发生。 转换流是双工的,其中读写以因果关系进行。双工流的端点