Zurück Weiter Inhalt

1.6 Pattern Matching

Ein Funktion kann mehrere Definitionen haben. Es wird per Pattern Matching entschieden anhand der aufrufenden Parameter, welche Definition angewendet wird.

Beispiel: Rekursive Funktion zum Berechnen von x Exponent y

xHochY :: Int -> Int -> Int
xHochY x 0 = 1
xHochY x _ = x * xHochY x (y-1)

Wenn y = 0 ist, wird die erste Definition verwendet. In allen anderen Fällen (_ ist Wildcard) wird die untere Definition verwendet. Die Funktion ist rekursiv und bricht nach y = 0 ab. Es wird jedoch nicht geprüft, ob kein y < 0 Parameter ist.


Zurück Weiter Inhalt