一位同事刚刚向我展示了这一点,我很惊讶它汇总了:
def toUpper(s: Option[String]): String = {
s.getOrElse(return "default").toUpperCase
// ^^^^^^ // a return here in the closure??
}
Run Code Online (Sandbox Code Playgroud)
这甚至有效:
println(toUpper(Some("text"))) // TEXT
println(toUpper(None)) // default
Run Code Online (Sandbox Code Playgroud)
我认为return从内部封闭是不允许的.从什么时候开始?是否有这种非本地回报的警告?