これは非常に基本的な質問ですが、どこでも答えを見つけることはできません。戻り値のないScalaメソッドでは、メソッドを途中で終了するにはどうすればよいですか? Javaでのようなreturn
を使用しようとすると、例えば Scalaでvoidメソッドを中断または終了する方法はありますか?
def printPositiveNumbersSum (n1: Int, n2: Int) = {
if (n1 < 0 || n2 < 0)
// How do I break out of this method here?
println(n1 + n2)
}
はprintPositiveNumbersSum
は、戻り値の型を持っていないというエラーが発生します。
私はこれをif-elseステートメントにすることができますが、メソッドを終了して呼び出し元に戻る条件が複数ある場合は、すぐに扱いにくくなります。
http://softwareengineering.stackexchange.com/questions/118703/where-did-the-notion-of-one-return-only「あなたはメソッドに複数の出口ポイントを持つべきではありません」 -から来る –