- Scala 集合教程
- Scala 集合 - 首頁
- Scala 集合 - 概述
- Scala 集合 - 環境設定
- Scala 集合 - 陣列
- Scala 集合 - 陣列
- Scala 集合 - 多維陣列
- Scala 集合 - 使用範圍建立陣列
- Scala 集合 - ArrayBuffer
- Scala 集合 - 列表
- Scala 集合 - 列表
- Scala 集合 - ListBuffer
- Scala 集合 - ListSet
- Scala 集合 - Vector
- Scala 集合 - 集合
- Scala 集合 - 集合
- Scala 集合 - BitSet
- Scala 集合 - HashSet
- Scala 集合 - TreeSet
- Scala 集合 - 對映
- Scala 集合 - 對映
- Scala 集合 - HashMap
- Scala 集合 - ListMap
- Scala 集合 - 其他
- Scala 集合 - 迭代器
- Scala 集合 - Option
- Scala 集合 - 佇列
- Scala 集合 - 元組
- Scala 集合 - Seq
- Scala 集合 - 棧
- Scala 集合 - Stream
- Scala 集合組合器方法
- Scala 集合 - drop
- Scala 集合 - dropWhile
- Scala 集合 - filter
- Scala 集合 - find
- Scala 集合 - flatMap
- Scala 集合 - flatten
- Scala 集合 - fold
- Scala 集合 - foldLeft
- Scala 集合 - foldRight
- Scala 集合 - map
- Scala 集合 - partition
- Scala 集合 - reduce
- Scala 集合 - scan
- Scala 集合 - zip
- Scala 集合有用資源
- Scala 集合 - 快速指南
- Scala 集合 - 有用資源
- Scala 集合 - 討論
Scala 集合 - Stream
Scala Stream 是一種具有惰性求值功能的特殊列表。在 Scala Stream 中,元素僅在需要時才進行求值。Stream 支援惰性計算,並且效能優越。
宣告 Stream 變數
以下是宣告 Stream 變數的語法。
語法
val stream = 1 #:: 2 #:: 3 #:: Stream.empty
這裡,stream 被宣告為一個數字流。其中 1 是流的頭部,2、3 是流的尾部。Stream.empty 標記流的結束。可以使用 take 命令檢索值,例如以下命令:
命令
stream.take(2)
處理 Stream
下面是一個示例程式,演示瞭如何建立、初始化和處理 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, <not computed>) 1, 2 Stream: Stream()
廣告