Informatiker Board (http://www.informatikerboard.de/board/index.php)
- Themengebiete (http://www.informatikerboard.de/board/board.php?boardid=1)
--- Theoretische Informatik (http://www.informatikerboard.de/board/board.php?boardid=5)
---- Logik (http://www.informatikerboard.de/board/board.php?boardid=16)
----- enum in Java? (http://www.informatikerboard.de/board/thread.php?threadid=2693)


Geschrieben von Java_Beginner am 16.12.2015 um 06:07:

  enum in Java?

Meine Frage:
HI Leute :-)

Ich werde nicht ganz schlau, was die enums in Java für einen Sinn haben sollen und wie diese angelegt werden?

Habe jetzt folgendes probiert, das funktioniert auch:

code:
1:
2:
3:
4:
5:
6:
enum Ampel
{
        ROT,GELB,gruen; 
}


Sobald ich eine Zahl eingebe, kommen wieder Fehlermeldungen. Sind enums nur für den Datentyp String ausgelegt? Warum benötige ich bei enums keinen Modifier?

Meine Ideen:
Vielen Dank



Geschrieben von eulerscheZahl am 16.12.2015 um 06:24:

 

Enum werden intern als int übersetzt.
Ich habe die genaue Spezifikation nicht im Kopf, würde aber tippen, dass ROT==0 ist, GELB==1.
Mit ROT.ordinal(); kannst du das auch auslesen.
Der Sinn ist in erster Linie die Fehlervermeidung (ähnlich wie bei Konstanten). Du musst dir keine Zahlen mehr merken, sondern kannst ROT schreiben. Ich habe mal ein Programm geshrieben, das mit Hardware kommuniziert hat. Die Schnittstelle hat da feste Konstanten gefordert, da war enum hilfreich. Gleichzeitig kannst du die Konstanten thematisch ordnen.



Geschrieben von Java_Beginner am 16.12.2015 um 06:35:

 

Besten Dank :-)


Forensoftware: Burning Board, entwickelt von WoltLab GmbH