Wie codieren Sie eine Funktion, die einen Codeblock als Parameter mit case-Anweisungen akzeptiert? Zum Beispiel möchte ich in meinem Codeblock keine Übereinstimmung oder einen Standardfall explizit ausführen. Ich suche so etwas wie diesesWie codierst du einen Mustervergleichscode in scala?
myApi {
case Whatever() => // code for case 1
case SomethingElse() => // code for case 2
}
Und Innenseite meiner MyApi(), es wird tatsächlich den Codeblock ausführen und tun die Spiele.
Danke! Ich wusste, dass es etwas komisches war, aber ich konnte kein Beispiel dafür finden. – egervari
@egervari das gleiche Muster gilt auch für 'Function1'. Blöcke mit 'case'-Anweisungen sind Funktionsliterale und können für' PartialFunction' und 'Function1' stehen, je nachdem, welcher Typ erwartet wird. –