例外がスローされたらあれを実行したいが、 スローされなかったらこれを実行したい。 そういうときありますよね。 try-catch(-finally)では書きにくいときがある try-catch(-finally)では、 例外がスローされたときの処理(とスローされてもされなくてもする処理)は書けても、 スローされなかったときの処理は単純には書けません。 例で考えてみましょう。 まず、例外がスローされることを考えなくてよい場合を考えます。 fun noException() { val myValue = getMyValue() // 値を取得する。 .also { onMySuccess(it) // その後 onMySuccess を呼び出す。 onMyFinally() // 最後に onMyFinally を呼び出す。 } setMyValue(myValue) } ここで getM