gpt4 book ai didi

scala - #::运算符是什么意思?

转载 作者:行者123 更新时间:2023-12-04 13:14:06 25 4
gpt4 key购买 nike

我意识到这可能是一个简单的问题,但是在下面的代码行中实现的是“#::”。缺点是一种特殊的变化吗?

def from(n: Int): Stream[Int] = n #:: from(n + 1)

最佳答案

该运算符用于构造streams而不是列表。考虑具有简单缺点的相同代码段:

def from(n: Int): List[Int] = n :: from(n + 1)

运行此方法将产生 StackOverflowError。但是,使用 Stream[Int]时,尾部仅在需要时才被懒惰地求值(并且已经计算出的值会被记住)。

关于scala - #::运算符是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13407180/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com