M
mike
Gast
Habe in etwa folgenden Code:
Mein Problem ist, dass die methode remove() irgendwie nicht immer funktioniert, in bestimmten Fällen wird der zuvor vom Iterator geholte Object nicht gelöscht (dabei ist die Abfrage natürlich erfolgreich und die Collection wird bei den Abfragen nicht verändert)
Ich habe keine Ahnung, worin das Problem liegt, habe das Programm schon ein Paar Leuten gezeigt, die wussten auch nicht, was da falsch ist.
Kann leider nicht den gesamten Code posten, da das den Rahmen des Forums sprengen würde, es sind ungefähr 30 Klassen
, ausserdem denke ich sollte das nichts mit diesem Problem zu tun haben, denn wenn die next() funktioniert, dann sollte auch 2 Zeilen späten auch die remove() funktionieren :?
Hat jemand ne Idee, womit das zusammenhängen könnte? oder hat vielleicht mal jemand ähnliche Probleme gehabt?
Bin für jede Hilfe dankbar!
P.S. die Objecte, die in der Collection liegen, sind HashSets, die wiederrum weitere HashSets enthalten
gruß mike
Code:
.
.
Iterator it = myCollection.iterator();
while (it.hasNext()) {
myObject = (myObject)it.next() // hier wird keine ClassCastExeption gewofen
if (ein paar Abfragen) { // funktioniert einwandfrei
System.out.println("Abfrage erfolgreich"); // testen, ob Abfrage erfolgreich
it.remove();
}
}
.
.
.
Mein Problem ist, dass die methode remove() irgendwie nicht immer funktioniert, in bestimmten Fällen wird der zuvor vom Iterator geholte Object nicht gelöscht (dabei ist die Abfrage natürlich erfolgreich und die Collection wird bei den Abfragen nicht verändert)
Ich habe keine Ahnung, worin das Problem liegt, habe das Programm schon ein Paar Leuten gezeigt, die wussten auch nicht, was da falsch ist.
Kann leider nicht den gesamten Code posten, da das den Rahmen des Forums sprengen würde, es sind ungefähr 30 Klassen
Hat jemand ne Idee, womit das zusammenhängen könnte? oder hat vielleicht mal jemand ähnliche Probleme gehabt?
Bin für jede Hilfe dankbar!
P.S. die Objecte, die in der Collection liegen, sind HashSets, die wiederrum weitere HashSets enthalten
gruß mike