Wie früh in Scala zurückkehren [duplizieren]

Diese Frage hat hier bereits eine Antwort:

Explizite Rückkehr von der Spielaktion 2 Antworten

Ich lerne gerade Scala. Eine Sache, die ich gerne mache, ist die frühe Rückkehr. Ich bin überzeugt, dass dies für alle viel einfacher zu lesen ist, da wir gerade die ungültigen Zustände vorher entfernen. Nun, da Scala eine funktionale Sprache ist und ich gelesen habe, dass das Schneiden von Berechnungen ein schlechter funktionaler Stil ist, frage ich mich, ob es einen Trick oder eine funktionale Programmierung gibt, die einer frühen Rückkehr entspricht.

Dies ist Code, den ich schreiben würde, um ganz klar zu sein, dies ist nur ein dummes Beispiel. Ich suche nicht nach dem speziellen Hack meines speziellen Falls, sondern eher nach einem allgemeinen Ratschlag, wie ich damit umgehen soll.

if (request.headers.get(session_header).isEmpty) {
  BadRequest(session_not_set)
} else {
  Ok(CartHelper.getCart(session, user))
}

Nun, ich bin versucht zu tun:

if (request.headers.get(session_header).isEmpty) {
  BadRequest(session_not_set)
  return;
}

Ok(CartHelper.getCart(session,user))

Wenn Sie einen Hinweis für mich haben!

Antworten auf die Frage(2)

Ihre Antwort auf die Frage