Letzte Änderung:
20.03.2012
Douglas Adams
20.03.2012
Spruch des Tages
Noch sind wir zwar keine gefährdete Art, aber es ist nicht so, dass wir nicht oft genug versucht hätten, eine zu werden.Douglas Adams
enum
In vielen Programmiersprachen sind Aufzählungen möglich. In Java funktioniert eine Aufzählung ab einschließlich Version 5. Wie in vielen anderen Sprachen wird auch in Java hierfür das Schlüsselwort enum genutzt. Das Schlüsselwort enum ersetzt (oder ist vergleichbar) das Schlüsselwort class und ist entsprechend zu nutzen. Eine enum-Deklaration ist zu behandeln, wie die Deklaration einer Klasse. Von einer Aufzählung kann nicht abgeleitet werden, also kann die Aufzählung nicht als Super-Klasse dienen.
Beispiel:
public class Aufzaehlung
{
static enum Wochentag{Montag, Dienstag, Mittwoch, Donnerstag, Freitag, Samstag, Sonntag };
public static void main(String[] args)
{
for(Wochentag Tag: Wochentag.values())
System.out.printf("\n%s",Tag);
}
}
Eine Aufzählung
enum Wochentag{Montag, Dienstag, Mittwoch, Donnerstag, Freitag, Samstag, Sonntag };
lässt sich mit dem Statement
Wochentag[] Tag = Wochentag.values();
einem Array zuweisen.
Die mit der enum-Anweisung gebildeten Konstanten verfügen intern zur Identifizierung über eine Integerzahl. Deshalb ist ein if-Konstrukt zu Abfrage möglich.
Beispiel:
public class Aufzaehlung
{
static enum Ampel{rot, gelb, gruen};
public static void main(String[] args)
{
Ampel Farbe = Ampel.rot;
if(Farbe == Ampel.rot)
System.out.printf("\n%s",Farbe);
}
}
Genauso ist die Mehrfachauswahl über switch-case möglich.
Beispiel:
public class Aufzaehlung
{
static enum Ampel{rot, gelb, gruen};
public static void main(String[] args)
{
Ampel Farbe = Ampel.rot;
switch(Farbe)
{
case rot : System.out.printf("\nHalt"); break;
case gelb: System.out.printf("\nGleich gehts los"); break;
case gruen: System.out.printf("\nFahren"); break;
}
}
}