Erstes Element einer Enumeration ermitteln

Status
Nicht offen für weitere Antworten.

Math55

Bekanntes Mitglied
moin, wenn ich in einer enumeration nur ein element habe, wie kann ich dieses ausgeben bzw. eben verarbeiten?
wenn ich enum.nextElement() nutze, bekomme ich doch schon beim ersten mal das zweite? ne idee oder steh ich auf dem schlauch?


DANKE🙂
 
nein, wenn du es das erste mal ausführst, bekommst du auch das erste. die enumaeration kannst du genauso behjandeln als wenn mehrere elemente drin sind. sie ist ja dynamisch, das ist ja der sinn der sache. deswegen macht man ja eigentlich auch
Code:
while(enum.hasNext(){
    Object o = enum.next(); // oder so ähnlich
}
 
Du stehst auf dem Schlauch... 🙂

enum.nextElement() zeigt beim ersten Aufruf natürlich auf das erste Element.
 
In Deinem Fall brauchst Du aber keine Schleife.

Du prüfst zuerst mit

Code:
if (enum.hasNext() {
}

ob die Enumeration Elemente enthält.

Ist dies der Fall kannst Du das erste Element ermitteln und dann damit weiterarbeiten.
 
ja, aber wenn ich mit
Code:
while(en.hasMoreElements)..

durch die enum gehen, dann liefert der mir ja beim ersten mal schon false, da ja kein weiteres drin ist, oder?

gruß
 
Nein, das ist nicht korrekt.

Im Prinzip mußt Du Dir einen Zeiger vorstellen, der vor dem ersten Aufruf von hasNext() noch nicht auf das erste Element zeigt.
 
Nimm ein Vector, hau ein Element rein, und schau dir an, was die Enumeration macht, welche du mit Vector.elements kriegst!
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben