Следующие два кода генерируют разные результаты:
def x = try{
true
} finally false
invoke x получает true
def y:Boolean = try{
return true
} finally {
return false
}
invoke y получает false
the return
Версия ведет себя так же, как Java.
Лично я никогда не использую 'return' в scala.Но хорошо знать, как scala оценивает значение блока try-catch-finally.Спасибо.