Powiedzmy, że chcę obsłużyć wiele wartości zwracanych z usługi zdalnej przy użyciu tego samego kodu. Nie wiem, jak to wyrazić w Scali:
code match {
case "1" => // Whatever
case "2" => // Same whatever
case "3" => // Ah, something different
}
Wiem, że mogę użyć metody wyodrębniania i wywołać ją, ale połączenie nadal jest powtarzane. Gdybym używał Rubiego, napisałbym to tak:
case code
when "1", "2"
# Whatever
when "3"
# Ah, something different
end
Zwróć uwagę, że uprościłem przykład, dlatego nie chcę dopasowywać wzorców do wyrażeń regularnych lub podobnych. Wartości dopasowania są w rzeczywistości wartościami złożonymi.