愚かな質問私はscalaを学んでいます。私はinmutable valを使っているので、try/catchからvalを定義することはできません。この場合、通常の動作は何ですか?val変数をcatchで表示することを定義する
これは
try {
val jsonAlbum= new JSONObject(json.asInstanceOf[Map[String, Any]])
val album = AlbumFactory.create(jsonAlbum)
albums = albums ++ List(album)
} catch {
case e: NoSuchElementException => {
println(s" Excewption adding alnum:$jsonAlbum")--> This val is not visible
}
てみ
の外に定義されていないので、jsonAlbumはもちろん、私はVAR
「lazy val jsonAlbum = ???」と同様にできます。 try {useJsonAlbumEvaledOnlyThere} catch {case e:Throwable => ??? } ' – cchantep
これは機能していないように見えます。外側のスコープでjsonAlbumを定義し、作成中に例外をスローした場合はどうなりますか?JsonObject?ほとんどの場合、catchブロックには必要ありません。 –