Scala Stream用法示例

流是一个惰性列表。它仅在需要时评估元素。这是scala的功能。 Scala支持延迟计算。它可以提高程序的性能。


Scala流示例

在以下程序中, 我们创建了一个流。

object MainObject{
    def main(args:Array[String]){
        val stream = 100 #:: 200 #:: 85 #:: Stream.empty
        println(stream)
    }
}

输出

Stream(100, ?)

在输出中, 你可以看到未评估第二个元素。在此, 显示问号代替元素。除非需要, Scala不会评估列表。


Scala Stream示例:应用预定义方法

在下面的示例中, 我们使用了一些预定义的方法(例如toStream), 该方法用于迭代流元素。

import scala.collection.immutable._
object MainObject{
    def main(args:Array[String]){
        var stream = 100 #:: 200 #:: 85 #:: Stream.empty
        println(stream)
        var stream2 = (1 to 10).toStream
        println(stream2)
        var firstElement = stream2.head
        println(firstElement)
        println(stream2.take(10))
        println(stream.map{_*2})
    }
}

输出

Stream(100, ?)
Stream(1, ?)
1
Stream(1, ?)
Stream(200, ?)
微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?