我一直在尝试Bloxorz作业,将其作为Scala课程功能程序设计的一部分,并试图按下面的方式向Stream添加一个元素,但我得到了以下内容:
无法解析符号
#::。
在这个代码中有一些非常小的,明显的错误。我在这里做错什么了?
def neighborsWithHistory(b: Block, history: List[Move]): Stream[(Block, List[Move])] = {
(b.neighbors foldLeft Stream((b, history))) {
case (acc, (bl, move)) => acc #:: (bl, move :: history)
}
}发布于 2016-06-26 13:11:56
以冒号结尾的方法是http://www.scala-lang.org/files/archive/spec/2.11/03-types.html#infix-types。由于#::被定义为Stream上的ConsWrapper,您的acc需要位于右侧:
(bl, move :: history) #:: acchttps://stackoverflow.com/questions/38038759
复制相似问题