有人可以從REPL解釋下面的輸出嗎?Scala Stream By One
我正在定義2個(無限)流,除非圖之前有,否則其定義相同。一個定義中的(句點)和另一箇中的__(空格)。
我可以看到,這會導致地圖綁定不同,但會發生什麼情況輸出從第二個定義?
謝謝。
scala> lazy val infinite: Stream[Int] = 1 #:: infinite.map(_+1)
infinite: Stream[Int] = <lazy>
scala> val l = infinite.take(10).toList.mkString(",")
l: String = 1,2,3,4,5,6,7,8,9,10
scala> lazy val infinite2: Stream[Int] = 1 #:: infinite2 map(_+1)
infinite2: Stream[Int] = <lazy>
scala> val l2 = infinite2.take(10).toList.mkString(",")
l2: String = 2,3,4,5,6,7,8,9,10,11
酷!得到它了。謝謝! –
@BillBarrington:沒問題。如果您的問題得到解決,請接受/ upvote或其他答案。 –