Avatar ·

toString() in Java: String-Konkatenation oder StringBuilder – was ist schneller und besser?

Hallo zusammen! Ich bin ein Java-Anfänger und habe eine Frage zur Implementierung der `toString()`-Methode in meinen Klassen. Angenommen, ich habe eine einfache Klasse mit einigen Feldern: ```java public class User { private String name; private int age; private String email; // Konstruktor, Getter, Setter... @Override public String toString() { return "User{" + "name='" + name + '\'' + ", age=" + age + ", email='" + email + '\'' + '}'; } } ``` Dieser Code funktioniert, aber ich habe gelesen, dass String-Konkatenation mit `+` ineffizient sein kann, da Strings in Java unveränderlich sind und bei jeder Addition ein neues String-Objekt erstellt wird. Viele empfehlen die Verwendung von `StringBuilder`: ```java @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("User{"); sb.append("name='").append(name).append('\''); sb.append(", age="); sb.append(age); sb.append(", email='").append(email).append('\''); sb.append('}'); return sb.toString(); } ```