Wie arbeite ich in Java mit enums?

1 Antwort

Wie setze ich ein Attribut au ein wert des enums?

Beispiel:

enum Weekday { MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY }

class MyCalendar {
  private Weekday dayOfTheWeek;

  public MyCalendar(Weekday dayOfTheWeek) {
    this.dayOfTheWeek = dayOfTheWeek;
  }
}

// main:
MyCalendar calendar = new MyCalendar(Weekday.SATURDAY);

Oder ein Beispiel für eine direkte Zuweisung:

dayOfTheWeek = Weekday.SATURDAY;
Kann ich string in enum umwandeln?

Ja, dafür gibt es die statische Methode valueOf.

Weekday dayOfTheWeek = Weekday.valueOf("SATURDAY");

Achte hierbei auf die korrekte Schreibweise des Namens. Wenn keine passende Konstante gefunden werden kann, wirft die Methode eine IllegalArgumentException.