BigData im kleinen Stil

Wenn ich mal für Spacerat einspringen darf: Mit Java 1.7 wurde die Escape Analysis deutlich verbessert. Vereinfacht gesagt: Wenn der Compiler “beweisen kann”, dass ein Objekt eine Methode nicht verlassen wird, wird auch bei mehrfachem Aufruf der Methode das Objekt nicht jedes mal neu erstellt (und damit auch kein Datenmüll erzeugt). Aber auch das hat seine Grenzen, man sollte sich schon überlegen, welche Objekte wo erzeugt werden…

@Marco13 :
Danke fürs einspringen.

@TO:
Kann sein, was das “println()” angeht, denkbar wärs. Aber dennoch würde int + String in einer Schleife auch wieder besagten Datenmüll erzeugen. Das Ganze in zwei Zeilen wäre da denkbar schneller, also in der ersten “print(i)” und in der nächsten “print(’
')”.

[QUOTE=Spacerat]Schneller gehts jetzt wohl nur noch wenn man die Ausgabe optimiert. Dies könnte damit geschehen, indem man statt BufferedWriter und "write(i + "
“)” PrintStream und “println(i)” verwendet.

BTW.: Zeile 38 ist überhaupt ein hübsches Beispiel für ein krasses Foulspiel beim proggen. Warum wird dort der OutputStreamWriter noch in ein BufferedWriter geschachtelt, wenn man am Ende eh nur auf die Writer-Methoden scharf ist?[/QUOTE]

Moin Leute, sorry dass ich den Thread noch mal vorkrame. Ich hab mal versucht die Ausgabe im Sinne des obigen Beitrags von Spacerat zu verbessern.
Es hat sich rausgestellt dass die Ausgabe mit einem PrintStream drastisch langsamer ist (ungefähr 4-mal langsamer als der momentane Weg).

Zum Zweiten Punkt. Der BufferedWriter dient zum Puffern der Ausgabe, genau dafür ist das Verschachteln von Streams/Writer doch da. Mit Hilfe des BufferedWriter bin ich sogar noch ein Tick schneller als wenn ich den weglassen würde.

Ja, sehe ich auch so. Das ist ein klassischer Decorator und alles andere als ein Foulspiel.