So leeren Sie StringBuilder in Java: Richtige Methoden und Fallstricke
Hallo Kollegen! Ich bin ein Java-Anfänger und bin auf folgendes Problem gestoßen: In einer Schleife verwende ich StringBuilder zum Sammeln von Strings und muss ihn vor der nächsten Iteration leeren. Zuerst habe ich es so versucht:
```java
StringBuilder sb = new StringBuilder("Hello");
sb.append(" World");
System.out.println(sb); // Hello World
// Versuche zu leeren
sb = new StringBuilder();
```
Aber das erstellt ein neues Objekt, und das alte bleibt im Speicher – nicht sehr effizient. Dann bin ich auf die Methode `delete()` gestoßen und habe es versucht:
```java
sb.delete(0, sb.length());
```
Das funktioniert, aber ich bin mir nicht sicher, ob das die optimale Methode ist. Ich habe auch irgendwo die Methode `setLength(0)` gesehen, aber nicht verstanden, wie sie funktioniert.
Kurz gesagt, die Frage: Wie leert man StringBuilder richtig und effizient? Welche Methoden gibt es? Gibt es einen Unterschied zwischen `delete()`, `setLength(0)` und dem Erstellen eines neuen Objekts? Und was ist mit der Methode `toString()` – beeinflusst sie den internen Zustand? Ich wäre dankbar für eine ausführliche Erklärung mit Beispielen.