Daniel Thoma: Kuriosität mit Inkrementierung

Beitrag lesen

Hallo *Markus,

Der Teil in der while-Schleife liefert eine NullPointerException aufgrund der Inkrementierung innerhalb der eckigen Klammern.

Das dürfte eine ArrayIndexOutOfBounds-Exception sein. Eine NullPointerException könnte höchstens dann auftreten, wenn konten = null wäre.

Der nächste Punkt:
konten[i++] = konten[i+1];
Hier hab' ich erst mal überlegt, ob eigentlich zuerst die rechte Seite der Zuweisung oder i++ ausgewertet wird. Ziehe das i++ da lieber raus oder in den Kopf einer for-Schleife. Solche Trickserreien verwirren nur und bringen nichts.

Was bereits schon angedeutet wurde: Warum versuchst Du Dir selber so eine Krücke zu basteln, wenn Java fertige, ausgereifte Datenstrukturen mitbringt? Geeignet wäre z.B. ArrayList. Der einzige Grund, in so einem Fall direkt mit Arrays rumzubasteln, wäre, dass es sich um eine Übungsaufgabe handelt oder dass man aus Performancegründen o.ä. eine sehr genaue Kontrolle darüber will, wann neue Arrays angelegt und Daten zwischen Arrays kopiert werden.

Grüße

Daniel