Avatar ·

toString() في Java: سلسلة نصية عبر الربط أم StringBuilder — أيهما أسرع وأفضل؟

مرحباً بالجميع! أنا مطور Java مبتدئ، ولدي سؤال حول تنفيذ دالة `toString()` في كلاساتي. لنفترض أن لدي كلاس بسيط بعدة حقول: ```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 + '\'' + '}'; } } ``` هذا الكود يعمل، لكنني قرأت أن ربط السلاسل عبر `+` قد يكون غير فعال، لأن السلاسل في Java غير قابلة للتغيير، ومع كل عملية جمع يتم إنشاء كائن String جديد. الكثيرون ينصحون باستخدام `StringBuilder`: ```java @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("User{"); sb.append("name='").append(name).append('\''); sb.append(", age=");