Ich habe eine große Textdatei (ca. 20 Millionen Zeilen), die Zeilen im folgende Format hat: Whitespaces, die ich beim Lesen der Datei entfernen mag, kann diese Strings stechend oder schleppendWie trimmen Sie Strings in Java, ohne ein neues Objekt zu erstellen?
<string1>, <string2>
Jetzt.
Ich verwende derzeit trim()
für diesen Zweck, aber da String in Java unveränderlich ist, erstellt trim()
ein neues Objekt pro Trim-Operation. Dies führt zu zu viel Verschwendung von Speicher.
Wie kann ich es besser machen?
Bitte zeigen Sie, wie Sie die Datei lesen und dann die Strings aufteilen. –
Sie erkennen, dass nicht verwendete Strings gesammelt werden. Es gibt also keinen wirklichen * Speicher *, sondern nur neu erstellte Objekte (die vom GC effizient gesammelt werden). – Kayaman
Ich bin nicht ganz sicher, aber ich denke, mit [sed] (http://www.grymoire.com/Unix/Sed.html) könnte das Problem lösen –