我是scala的新手。在教程中,我看到了定义函数的方法是
def functionName ([list of parameters]) : [return type] = {...}
但在其他代码中,我看到以下示例,该函数未指示返回类型。这是为什么?
def parseLine(line:String) = {
val fields = line.split(",")
val stationID = fields(0)
val entryType = fields(2)
val temperature = fields(3).toFloat * 0.1f * (9.0f / 5.0f) + 32.0f
(stationID, entryType, temperature)
}
答案 0 :(得分:2)
如果没有返回类型,则最后一个表达式是返回值。
例如,
scala> def doSomething = "i will be returned"
doSomething: String
你可以在上面的例子中看到虽然没有提到返回类型,但它将String
作为返回类型。
此外,如果方法基于条件返回,scalac将自己确定返回类型。
scala> def doSomething = if(1 == 1) "i will be returned" else 2
doSomething: Any
scala> doSomething
res10: Any = i will be returned
同时阅读 - Return in Scala