Scala “单词”是什么意思;行政协调会:“;在斯卡拉是什么意思?
我有作业需要解释“acc::”这个词,但我到处都找不到,需要帮助吗 我已经从中阅读了Scala标准库,但仍然找不到它。我也读过Scala的电子书,但还是找不到Scala “单词”是什么意思;行政协调会:“;在斯卡拉是什么意思?,scala,scala-collections,Scala,Scala Collections,我有作业需要解释“acc::”这个词,但我到处都找不到,需要帮助吗 我已经从中阅读了Scala标准库,但仍然找不到它。我也读过Scala的电子书,但还是找不到 (n::acc.head)::acc.tail case(n,(u,acc))=>(n,List(n)::acc) 这只是一个变量还是别的什么?acc在Scala中不是保留字,在您的代码中,它似乎是一个表示累加器的val(它看起来像一个列表) 在Scala中,您可以使用:操作符将列表的头部放在左侧,尾部放在右侧,这样就可以构建一个列表 1
(n::acc.head)::acc.tail
case(n,(u,acc))=>(n,List(n)::acc)
这只是一个变量还是别的什么?
acc
在Scala中不是保留字,在您的代码中,它似乎是一个表示累加器的val(它看起来像一个列表
)
在Scala中,您可以使用:
操作符将列表的头部放在左侧,尾部放在右侧,这样就可以构建一个列表
1::2::Nil//List(1,2)
如果您已经有一个列表acc,您可以通过执行以下操作添加一个元素
1::acc
在第一个示例中,范围中的某个地方将有一个名为acc
的变量或参数
在第二个示例中,acc
是一个新变量,声明为match
的一部分
如果你有这样一个值
val x = (5, (0, 1))
x match {
case (n, (_ ,acc)) => (n, List(n) :: acc)
}
像这样的比赛
val x = (5, (0, 1))
x match {
case (n, (_ ,acc)) => (n, List(n) :: acc)
}
然后在=>
之后的代码中,n
将是5
,acc
将是1
。所以这个表达式的结果将是(5,List(5,1))
未捕获0
值,因为匹配值是。
我猜它的意思是“累加器”。看起来您在列表中收集了一些内容。要不要扩展一下?这个问题要求acc::
,不仅仅是acc
,我已经添加了一些关于:
的信息,这是列表的一种方法。有关列表的更多信息,请阅读此内容,谢谢您的回答,先生,如果它解决了您的问题,您能接受答案吗?谢谢你的回答,先生