📜  Scala集合-流

📅  最后修改于: 2020-11-02 04:33:25             🧑  作者: Mango


Scala Stream是具有延迟评估功能的特殊列表。在scala流中,仅在需要时才评估元素。 Stream支持延迟计算,并且精通性能。

声明流变量

以下是声明Stream变量的语法。

句法

val stream = 1 #:: 2 #:: 3 #:: Stream.empty

在这里,流被声明为数字流。这里1是流的头,2,3是流的头。 Stream.empty标记流的结尾。可以使用如下所示的take命令来检索值-

命令

stream.take(2)

处理流

下面是一个示例程序,显示了如何创建,初始化和处理Stream-

import scala.collection.immutable.Stream
object Demo {
   def main(args: Array[String]) = {
      val stream = 1 #:: 2 #:: 3 #:: Stream.empty
      // print stream
      println(stream)
      // Print first two elements    
      stream.take(2).print
      println()
      // Create an empty stream
      val stream1: Stream[Int] = Stream.empty[Int]
      // Print element
      println(s"Stream: $stream1")
   }
}

将以上程序保存在Demo.scala中。以下命令用于编译和执行该程序。

命令

\>scalac Demo.scala
\>scala Demo

输出

Stream(1, )
1, 2
Stream: Stream()