Spróbuj… złap… w końcu zwróć wartość

Odkryłem, że szkoda, że ​​nie mogę zwrócić wartości zwrotu z tak prostej konstrukcji jaktry ... catch ... finally

 def foo: String = {
    val in = new BufferedReader(.....)
    try {
      // val in = new BufferedReader(.....) -- doesn't matter
      in.readLine
    }
    catch {
      case e: IOException => e.printStackTrace()
    }
    finally {
      in.close()
    }
  }

Ten kod się nie kompiluje. Czy jest jakiś sposób na kompilacjęoczekiwać używając dowolnych bibliotek, konstrukcji wysokiego poziomu itp.? Chcę to zrobić tylko poprzez wykorzystanie zdolności czystego Scala jako języka programowania.

questionAnswers(4)

yourAnswerToTheQuestion