Avatar ·

toString() in Java: String concatenation or StringBuilder — which is faster and better?

Hello everyone! I'm a beginner Java developer, and I have a question about implementing the `toString()` method in my classes. Let's say I have a simple class with several fields: ```java public class User { private String name; private int age; private String email; // constructor, getters, setters... @Override public String toString() { return "User{" + "name='" + name + '\'' + ", age=" + age + ", email='" + email + '\'' + '}'; } } ``` This code works, but I've read that string concatenation using `+` can be inefficient because strings in Java are immutable, and each concatenation creates a new String object. Many advise using `StringBuilder`: ```java @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("User{"); sb.append("name='").append(name).append('\''); sb.append(", age="); ```