gpt4 book ai didi

scala - 为什么这个 Scala 行返回一个单位?

转载 作者:行者123 更新时间:2023-12-04 09:00:43 24 4
gpt4 key购买 nike

下面是一段 Scala 代码,用于对可被 3 或 5 整除的 1 到 9 的值求和。为什么第 5 行返回一个 Unit 而不是 Boolean 类型?

object Sample {

def main(args : Array[String]) {
val answer = (1 until 10).foldLeft(0) ((result, current) => {
if ((current % 3 == 0) || (current % 5 == 0)) {
result + current
}
})

println(answer)
}

}

最佳答案

if 表达式的类型为 Unit,因为没有 else 子句。因此,有时它不返回任何内容 (Unit),因此整个表达式的类型为 Unit。

(我想你是想问为什么它不返回 Int,而不是 Boolean)

关于scala - 为什么这个 Scala 行返回一个单位?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4038741/

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