Angenommen, ich möchte mehrere Rückgabewerte von einem Remotedienst mit demselben Code verarbeiten. Ich weiß nicht, wie ich das in Scala ausdrücken soll:
code match {
case "1" => // Whatever
case "2" => // Same whatever
case "3" => // Ah, something different
}
Ich weiß, dass ich die Extraktionsmethode verwenden und das aufrufen kann, aber der Aufruf wiederholt sich immer noch. Wenn ich Ruby verwenden würde, würde ich es so schreiben:
case code
when "1", "2"
# Whatever
when "3"
# Ah, something different
end
Beachten Sie, dass ich das Beispiel vereinfacht habe und daher keine Musterübereinstimmung für reguläre Ausdrücke oder ähnliches vornehmen möchte. Die Übereinstimmungswerte sind tatsächlich komplexe Werte.
scala
pattern-matching
François Beausoleil
quelle
quelle
Antworten:
Du kannst tun:
Beachten Sie, dass Sie Teile des Musters nicht an Namen binden können - dies ist derzeit nicht möglich:
quelle