Guten Tag.
Warum die NoSuchElementException ?
Exception in thread "main" java.util.NoSuchElementException
at java.util.TreeMap$PrivateEntryIterator.nextEntry(TreeMap.java:1098)
at java.util.TreeMap$KeyIterator.next(TreeMap.java:1154)
at TreeSetTest.main(TreeSetTest.java:124)
------------------------------------------------------ Code Anfang ---------------------------------------
...
TreeSet<Person1> ts = new TreeSet<Person1>();
Iterator ascit2 = ts.iterator();
while(ascit2.hasNext() ){
Person1 objP = (Person1)ascit2.next(); // ZEILE 117
System.out.println(objP.vname);
}
Iterator descit2 = ts.descendingIterator();
while(descit2.hasNext()){
Person1 objP1 = (Person1)ascit2.next(); // ZEILE 124 Geht nicht : wirft obige Fehlermeldung
System.out.println(objP1.vname);
System.out.println(descit2.next()); // ZEILE 126 Klappt ! ascit2.hasNext() und (descit2.next()) durchlaufen TreeSet-Objekt
}
...
------------------------------------------------------ Code ENDE ---------------------------------------
Frage 1:
Warum klappt ZEILE 126, mit der die Objekte, also mehrmals sowas wie "Person1@42e816", ausgegeben werden
und ZEILE 124 NICHT , wohingegen ZEILE 117 die prinzipiell gleich ist, problenlos ausgeführt wird.
Ich bedanke mich für sachdienliche Hinweise, die zur Lösung meines Problemchens führen.
Gruß
Steve222
Warum die NoSuchElementException ?
Exception in thread "main" java.util.NoSuchElementException
at java.util.TreeMap$PrivateEntryIterator.nextEntry(TreeMap.java:1098)
at java.util.TreeMap$KeyIterator.next(TreeMap.java:1154)
at TreeSetTest.main(TreeSetTest.java:124)
------------------------------------------------------ Code Anfang ---------------------------------------
...
TreeSet<Person1> ts = new TreeSet<Person1>();
Iterator ascit2 = ts.iterator();
while(ascit2.hasNext() ){
Person1 objP = (Person1)ascit2.next(); // ZEILE 117
System.out.println(objP.vname);
}
Iterator descit2 = ts.descendingIterator();
while(descit2.hasNext()){
Person1 objP1 = (Person1)ascit2.next(); // ZEILE 124 Geht nicht : wirft obige Fehlermeldung
System.out.println(objP1.vname);
System.out.println(descit2.next()); // ZEILE 126 Klappt ! ascit2.hasNext() und (descit2.next()) durchlaufen TreeSet-Objekt
}
...
------------------------------------------------------ Code ENDE ---------------------------------------
Frage 1:
Warum klappt ZEILE 126, mit der die Objekte, also mehrmals sowas wie "Person1@42e816", ausgegeben werden
und ZEILE 124 NICHT , wohingegen ZEILE 117 die prinzipiell gleich ist, problenlos ausgeführt wird.
Ich bedanke mich für sachdienliche Hinweise, die zur Lösung meines Problemchens führen.
Gruß
Steve222