Compilerfehler "Verwendung nicht zugewiesener lokaler Variablen" für switch-Anweisung in C #?

Ich habe den folgenden C # -Code:

AnimalTypeEnum animal;
string s = Console.ReadLine();
switch (s.ToLower())
{
case "dog":
    animal = AnimalTypeEnum.DOG;
    break;
case "cat":
    animal = AnimalTypeEnum.CAT;
    break;
case "rabbit":
    animal = AnimalTypeEnum.RABBIT;
    break;
}

Console.WriteLine(animal); #compiler error here

Ich erhalte diesen Fehler in der letzten Zeile:Use of unassigned local variable 'animal'. Ich weiß, dass es daran liegtanimal Möglicherweise ist kein Wert abhängig von der Benutzereingabe. Wie behebe ich das?

Idealerweise möchte ich eine Fehlermeldung anzeigen, wenn ein unbekannter Tiertyp eingegeben wurde, und den Benutzer veranlassen, den Wert erneut einzugeben.

Vielen Dank.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage