enum und switch case geht nicht?
lima-city → Forum → Programmiersprachen → Java
ausprobieren
blau spielfeld
break
code
compiler
farbe
feld
folgende code
gelb spielfeld
hinweis
inhalt
logik
punkt
rot schreiben
rot spielfeld
spieler
spielfeld
stellen
switch
zahl
-
Ich bin jetzt etwas verwundert, dass der folgende Code ungültig ist. Es werden jeweils die Farben nach dem Punkt rot unterstrichen. Einen Hinweis auf Fehlerursache wird aber nicht gegeben. LSpielfarbe ist ein enum also ein integer, es müsste doch gehen? Warum meldet mir der compiler an diesen Stellen Fehler?
private void spielfigurSetzen(int feld, LSpielfarbe spieler) { switch(spieler) { case LSpielfarbe.rot : spielfeld[feld] = spieler_rot; break; case LSpielfarbe.blau : spielfeld[feld] = spieler_blau; break; case LSpielfarbe.gelb : spielfeld[feld] = spieler_gelb; break; case LSpielfarbe.gruen : spielfeld[feld] = spieler_gruen; break; default : spielfeld[feld] = kein_spieler; } }
package logik; public enum LSpielfarbe { rot, blau, gruen, gelb, weis }
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
du musst in der switch glaube ich anstatt LSpielfarbe.rot einfach nur rot schreiben, ich hatte das gleiche auch mal, kanns aber gerade leider nicht ausprobieren.
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage