Casten

Enceladus271

Bekanntes Mitglied
Das geht gar nicht. Man kann die Instanz einer Klasse K nur zu einem Typ casten der eine Superklasse von K ist oder zu einem Interface welches K implementiert.

Vielleicht meinst du etwas anderes. Du kannst zu einem String das entsprechende Enum Element ermitteln:
Java:
  enum MyEnum {
     FOO, BAR
   }

   public static void main(String[] args) {
     MyEnum result = MyEnum.valueOf("FOO");
     System.out.println(result == MyEnum.FOO);
   }
 

Windows10

Bekanntes Mitglied
Das geht gar nicht. Man kann die Instanz einer Klasse K nur zu einem Typ casten der eine Superklasse von K ist oder zu einem Interface welches K implementiert.

Vielleicht meinst du etwas anderes. Du kannst zu einem String das entsprechende Enum Element ermitteln:
Java:
  enum MyEnum {
     FOO, BAR
   }

   public static void main(String[] args) {
     MyEnum result = MyEnum.valueOf("FOO");
     System.out.println(result == MyEnum.FOO);
   }
Wie kann man aber, um bei deinem Beispiel-Code zu bleiben ein enum-Array mit FOO und BAR füllen?
 

T_T

Bekanntes Mitglied
Meinst du das so?:

Java:
public enum Strings {
        ENUM_I("Irgendein Text"),
        ENUM_W("Ein anderer Text"),

        final String text;
       
        private Strings(final String text) {
            this.text = text;
        }
       
        @Override
        public String toString() {
            return text;
        }
    }
 

Neue Themen


Oben