Ich möchte String und Integer zusammen definieren, aber es gibt Fehler.
%Vor%Der Fehler ist ein Syntaxfehler auf Token 9, lösche dieses Token.
Die Dinge in enum
s sind Bezeichner , Namen von statischen endgültigen (konstanten) Objekten, die erstellt werden. Sie können also kein int für die Benennung eines Objekts verwenden.
enum
s ermöglicht das Platzieren von Feldern für jeden Eintrag:
Sie wollen wirklich nicht alle 52 Karten auf diese Weise codieren. Sie können es anders modellieren:
Suite:
%Vor%Klasse mit einigen populären Rängen als benannte Konstanten:
%Vor% Sie können ein Aufzählungsfeld nicht mit einer Nummer beginnen. Verwenden Sie NINE
.
probiere
aus %Vor%anstelle Ihrer enum
Das Problem ist, dass, wenn Sie die Zahl als Enum-Wert hätten setzen können, der Compiler nicht wissen würde, wenn jemand "9" schreibt, meinte er die Nummer oder die Enumeration. so wird Java, wie fast jede Sprache, diese Art von Enum-Wert nicht zulassen