以下两个代码生成不同的结果:
def x = try{
true
} finally false
Run Code Online (Sandbox Code Playgroud)
调用x得到 true
def y:Boolean = try{
return true
} finally {
return false
}
Run Code Online (Sandbox Code Playgroud)
调用y得到 false
该return版本的行为与Java相同.
我个人从不在scala中使用'return'.但是知道scala如何评估try-catch-finally块的值是很好的.谢谢.
scala ×1