Enum in Java

Status
Nicht offen für weitere Antworten.
J

JavaAPP

Gast
Wie setze ich den folgenden Code in Java um?



Code:
In C sieht das so aus: 
            enum richtungen {O,SO,SW,W,NW,NO}; 
            char* bezeichner [6] = {"O" ,"SO" ,"SW" ,"W" , "NW" , "NO"};

Die Richtungen werden mit Hilfe des Enumerationsdatentyps richtungen mit Zahlen von 0 bis 5 identifiziert. Die Richtungsnamen sind im Array bezeichner angelegt.

Wie muss man so etwas in Java umsetzen und wofür ist ein Enumerationsdatentyp gut, oder welche Aufgabe hat es?
 
J

JavaAPP

Gast
Ich habe noch JAVA 1.4.2! Das Thema war an der Richtigen Stelle!
 
B

bygones

Gast
Enums an sich gibt es erst ab 1.5 - du kannst aber public (bzw. protected oder private) Konstanten in einer Klasse definieren...

also z.b.
Code:
public abstract class Directions {
  public static final int OST = 0;
  public static final int WEST = 1;
  public static final int NORTH = 2;
  public static final int SOUTH = 3;
}
dann kannst du im Code darauf zugreifen:
Code:
Directions.OST;
 
J

JavaAPP

Gast
Danke für die Information!

Wie könnte ich das jetzt noch mit dem char-Array machen?
 
B

Beni

Gast
Ich versteh ehrlich gesagt nicht ganz, wie das mit dem String-Array (char = Einzelzeichen, String = Text. Du benötigst wenn schon dann String) gemeint ist? Soll das eine Übersetzung von den Integern zu Text sein oder wie oder was? :bahnhof:
 
G

Guest

Gast
Ja, muss die Richtungen (OST, Süd-OST ...) in ein Array reinbekommen.
 
B

bygones

Gast
Anonymous hat gesagt.:
Ja, muss die Richtungen (OST, Süd-OST ...) in ein Array reinbekommen.
versteh zwar nicht warum sie in einen Array müssen, aber geht natürlich auch:
z.b. als Strings
Code:
public static final String SOUTH = "SOUTH";
publis static final String NORTH = "NORTH";
....
public static final String[] DIRECTIONS = {SOUTH, NORTH};
oder über int zugriff:
Code:
public static final int SOUTH = 0;
public static final int NORTH = 1;
.....
public static final int[] DIRECTIONS = {SOUTH, NORTH};
[/code]
 
B

bygones

Gast
nein haben sie nicht... Das Interface Enumeration diente dazu durch sequenziell durch eine Collection zu laufen.

Das Feature Enum ist ein komplette unterschiedlicher Ansatz und Idee
 

Bleiglanz

Gesperrter Benutzer
richtige Lösung für 1.4 ist in http://developer.java.sun.com/developer/Books/effectivejava/Chapter5.pdf
beschrieben

Code:
// The typesafe enum pattern 
public class Suit { 
private final String name; 
private Suit(String name) { this.name = name; } 
public String toString() { return name; } 
public static final Suit CLUBS = new Suit("clubs");
public static final Suit DIAMONDS = new Suit("diamonds");
public static final Suit HEARTS = new Suit("hearts"); 
public static final Suit SPADES = new Suit("spades"); }

kann man dann z.B. mit Suit.CLUBS benutzen...
 
H

Hase

Gast
Generics, enum....
Da scheint jemand eine gewise andere Sprache, die unter Java-Programmierern nicht unbedingt als besser angesehen wird, kopieren zu wollen. Wenn sie bald den Scope-Operator :: einführen, könnt ihr gleich alle kompilieren und friends erstellen.
Sollte Java nicht eine eigenständige Sprache sein?

Für die Freunde des weniger subitlen Stils: Generics & enums sind eigentlich C++ Dinge, die lange vorher existierten,
 
B

bygones

Gast
was soll denn der Uninn Hase ??
1. behauptet keiner hier, dass Java besser ist als C++
2. warum soll sich eine Sprache nicht entwickeln können

Soll man so engstirnig sein und sagen: Ich gut alle schlecht ? sorry das ist unsinn...

außerdem gabs vor C++ nicht mal C ?
 
H

hase

Gast
Nein, Da hast du mich falsch verstanden. Natürlich kann man keine Programmiersprachen wertung aufstellen. Aber meiner Meinung nach geht es sehr in C++ Richtung, und Java sollte nicht an andere Sprachen angepasst werden. Mit dem Satz "von Programmierern nicht unbedingt als besser angesehen" meine ich, dass jemand, der Java programmiert, zwar nicht C++ zwingend gut oder schlecht finden muss, aber er hätte ja auch C++ lernen können. Wenn man Java daran angleicht, sieht es ein wenig danach aus, als sei C++ von Anfang an besser gewesen. Aber vielleicht sehe ich da ja auch nur Gespenster......
 
H

hase(nachtrag)

Gast
deathbyaclown hat gesagt.:
außerdem gabs vor C++ nicht mal C ?
ist zwar nebensächlich, aber C++ ist eine andere Sprache, die lediglich auf C basiert. Java 1.5 ist ja eine Erweiterung
 

Calamitous

Bekanntes Mitglied
außerdem gabs vor C++ nicht mal C ?

also soviel ich informiert bin gabs C vor C++. Das ganze war aber noch nicht Objektorientiert. nix vererbung, usw...
und ein paar (warens 2?) habens halt verbessert und die verbesserung durch ein "++" angedeutet was ja soviel wie "+1" bedeutet (wahrscheinlich wollten sie kein 'D' weil 'C'+1 wäre ja 'D')

Java 1.5 ist ja eine Erweiterung
Java1.5 bzw Java5 (wie auch immer) ist eine Erweiterung bezüglich des Frameworks (mehr Klasse, etc...)
aber auch(!) von der Sprache an sich (Generics, ...).
 

Tobias

Top Contributor
Mal diese unsinnige Diskussion über C und Java beiseite lassend: Kann mir jemand ein praxisbezogenes Beispiel nennen, wo ich für Enum-Konstanten Verhalten (also Methoden) benötige?

mpG
Tobias
 

thE_29

Top Contributor
[offtopic]nur so nebenbei!

Die Erfinder von C waren die Unix Typen (Ken Thompson, Dennis Ritchie und Brian Kernigham ~1973 wobei Ritchie das meiste machte)

Und der Erfinder von C++ war "Bjarne Stroustrup" ~1983[/offtopic]
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
X Java findet eine Enum Klasse nicht Allgemeine Java-Themen 2
H2SO3- Enum mit Java 1.4 Allgemeine Java-Themen 6
R Java enum switch Allgemeine Java-Themen 11
R Java enum Allgemeine Java-Themen 5
N Java und Enum Allgemeine Java-Themen 3
S Java Enum und ordinal() Allgemeine Java-Themen 4
J Best Practice Generics mit Enum Allgemeine Java-Themen 3
Drachenbauer Wie kann ich einer existierenden Enum von außerhalb veränderte Werte zuweisen? Allgemeine Java-Themen 5
A Ist ein enum hier richtig? Enum toString() Methode. Allgemeine Java-Themen 1
E Eigenen "Aufzählungstyp" erstellen - mit enum ? Allgemeine Java-Themen 18
I Enum gegen Enum tauschen Allgemeine Java-Themen 1
F Enum-werte als Methoden-Parameter übergeben Allgemeine Java-Themen 6
Neumi5694 Interface Generics für Enum-Filterung verwenden Allgemeine Java-Themen 5
perlenfischer1984 TestNG - Enum testen Allgemeine Java-Themen 1
I Setzen und Lesen eines Objektes (Enum?) Allgemeine Java-Themen 10
Q Enum Allgemeine Java-Themen 3
F Enum und Klasseninhalt Allgemeine Java-Themen 1
K Enum mit switch Allgemeine Java-Themen 2
D Enum Kategorien Allgemeine Java-Themen 10
C Datentypen Enum-Werte Bestanteil von anderem Enum Allgemeine Java-Themen 8
M Enum austauschbar machen Allgemeine Java-Themen 3
Rudolf State Pattern als Enum? Allgemeine Java-Themen 10
E Klassen Enum überladen od. austauschbar machen? Allgemeine Java-Themen 2
EnHancEd[] kurze enum-Frage Allgemeine Java-Themen 4
A Dynamisches Enum? Allgemeine Java-Themen 2
E Wert von enum zur Laufzeit festlegen. Allgemeine Java-Themen 5
D Methode für generische enummap/enum Allgemeine Java-Themen 10
D Array oder Vector in Enum Deklarieren Allgemeine Java-Themen 3
L HashMap mit Enum Keys Allgemeine Java-Themen 3
G Enum mit Array Allgemeine Java-Themen 3
D Wie prüfen, ob ein String Teil eines Enum Types ist? Allgemeine Java-Themen 12
S Erstes Enum bekommen? Allgemeine Java-Themen 2
M Verständnis enum - switch Allgemeine Java-Themen 2
S Enum-Class valueOf Function? Allgemeine Java-Themen 1
J Enum Problem: compiliert nicht mit Sun's compiler. Allgemeine Java-Themen 2
V Wie Enum an Funktion "übergeben" ? Allgemeine Java-Themen 4
GilbertGrape persistentes Enum oder Konstanten? Allgemeine Java-Themen 3
G enum Integer zuweisen Allgemeine Java-Themen 14
G class, interface, or enum exp? Allgemeine Java-Themen 2
P enum Allgemeine Java-Themen 7
S Enum Fehler Allgemeine Java-Themen 17
C Enum-namespace ? Allgemeine Java-Themen 5
G Effizienz von enum vs. Konstanten Allgemeine Java-Themen 4
C enum und Vererbung Allgemeine Java-Themen 3
K Warunung und Fehler bei Enum.valueOf Allgemeine Java-Themen 2
C enum Strings mit punkt ? Allgemeine Java-Themen 3
OnDemand Java Deployment Vaadin Allgemeine Java-Themen 3
D Hat Java eine Library um JavaScript auszuwerten? Allgemeine Java-Themen 2
Zrebna Wieso sind eigentlich JUnit-Tests in src/test/java platziert - nur Konvention? Allgemeine Java-Themen 7
N LlaMA, KI, java-llama.cpp Allgemeine Java-Themen 39
V Java-Codierungsherausforderung: Navigieren durch die Macken der Datumsmanipulation Allgemeine Java-Themen 2
E Output Fehler (Java-Programm Kuchen) Allgemeine Java-Themen 11
M java: unexpected type Allgemeine Java-Themen 2
harrytut Java Input/Output Tests Junit Allgemeine Java-Themen 3
B Java Discord bot auf ein Root Server? Allgemeine Java-Themen 1
BetziTheRealOne Java PKIX path building failed as non Admin Allgemeine Java-Themen 15
D Linux, Java-Version wird nicht erkannt bzw. welche Einstellung fehlt noch? Allgemeine Java-Themen 19
KonradN Java 21 Release Allgemeine Java-Themen 5
V Umgang mit fehlenden Daten in einer Java-Datenanalyseanwendung Allgemeine Java-Themen 5
P Fehler: Hauptklasse Main konnte nicht gefunden oder geladen werden Ursache: java.lang.ClassNotFoundException: Main Allgemeine Java-Themen 24
K Java Anwendung machen Anleitung Allgemeine Java-Themen 5
G java.io.listFiles() Allgemeine Java-Themen 3
8u3631984 Frage zu Java Streams min / max Allgemeine Java-Themen 17
S Java Programm lässt sich vom USB-Stick starten, aber nicht von HDD Allgemeine Java-Themen 16
K Java-Projekt Allgemeine Java-Themen 11
K Java-Projekt Allgemeine Java-Themen 0
ruutaiokwu Welcher Browser unterstützt heutzutage noch Java Applets? Allgemeine Java-Themen 5
Jose05 Java-Klasse im extra cmd-Fenster ausführen Allgemeine Java-Themen 3
rode45e Java Threads Allgemeine Java-Themen 4
G java.io.listFiles() Allgemeine Java-Themen 2
N Java Dynamic Proxy Allgemeine Java-Themen 3
N Leichte Java Gegner Ki Allgemeine Java-Themen 10
A Java modul Problem Allgemeine Java-Themen 4
Thomasneuling Java Jar datei erstellen, von Projekt, dass auch Javafx Dateien, FXML Dateien und CSS Dateien, sowie Bilder enthält? Allgemeine Java-Themen 14
V Funktionale Schnittstelle in Java Allgemeine Java-Themen 3
OnDemand Java String in Hashmap als Key NULL Allgemeine Java-Themen 27
urmelausdemeis Exception in thread "main" java.lang.Error: Unresolved compilation problem: Allgemeine Java-Themen 7
berserkerdq2 Wenn ich bei Intelij javafx mit maven importieren will, muss ich das in die pom.xml reintun, aber warum noch in module-info.java? Allgemeine Java-Themen 3
KonradN Java 20 am 21. März Allgemeine Java-Themen 1
O Java Website Stock Bot Allgemeine Java-Themen 3
J Front-/Backend in Java Allgemeine Java-Themen 14
doopexxx JAVA Google Webcrawler Allgemeine Java-Themen 1
J JavaScript innerhalb eines Java Projekts ausführen Allgemeine Java-Themen 2
A Java Programm erstellen hilfe Allgemeine Java-Themen 10
G java.lang.NoClassDefFoundError: org/aspectj/lang/Signature Allgemeine Java-Themen 2
lalex1491 Java Aktienkurse nachfragen Allgemeine Java-Themen 4
J Class to link Java Allgemeine Java-Themen 4
V Wie funktioniert das Schlüsselwort "final" von Java? Allgemeine Java-Themen 19
mrStudent Inferenz JAVA Allgemeine Java-Themen 6
U URI Rechner (Java Script) Allgemeine Java-Themen 7
TheSkyRider Java Geburtsdatum Textfeld Allgemeine Java-Themen 7
mihe7 Java 19 JavaDocs: Browserintegration Allgemeine Java-Themen 0
Encera Gleichzeitiges Ausführen und verbinden von 2 Java-Klassen über die Eingabeaufforderung und Eclipse Allgemeine Java-Themen 21
H Java Rechner Programmierung der Mathematik Allgemeine Java-Themen 33
Lennox Schinkel Java Kara Auf einen Java Host laufen lassen Allgemeine Java-Themen 17
C Fußnoten von DocX mit Java Allgemeine Java-Themen 2
C Fußnoten in DocX mit Java Allgemeine Java-Themen 1
M Aussagenlogik in Java Programmieren Allgemeine Java-Themen 22
B Per Java Word Dokument schreiben? Allgemeine Java-Themen 8
krgewb Java-Bibliothek für ONVIF Allgemeine Java-Themen 1

Ähnliche Java Themen

Neue Themen


Oben