دعنا نحلل سلسلة سلسلة أدناه.
1.String
افتح رمز المصدر للسلسلة ، كما هو موضح في الشكل
ستجد أن قيمة الحرف التي تخزن السلسلة ثابتة نهائية. بالنظر إلى طريقة بناء السلسلة ، وجدنا أن قيمة السلسلة تحددها طريقة البناء. من الضروري شرح الكلمة الرئيسية النهائية هنا
السمة المعدلة حسب النهائي ثابت (لا يمكن تغيير القيمة). يتم تعيين قيمة إما أثناء إعلانها أو تعيين قيمة في طريقة البناء. بمجرد تعيينه ، لا يمكن تغييره.
لذلك ، باستخدام سلسلة لتنفيذ خياطة السلسلة. نظرًا لأنه لا يمكن تغيير قيمة السلسلة ، يجب إنشاء سلسلة جديدة لكل خياطة لتخزين سلسلة جديدة. لذلك ، فإن استخدام السلسلة للتعامل مع خياطة السلسلة سيكون أداء منخفض للغاية.
لمزيد من المعلومات حول String ، يرجى الرجوع إلى المدونة: http://longpo.iteye.com/blog/2199493
2.StringBuffer
يرث فئة StringBuffer فئة Class AbstractStringBuilder وتفتح رمز مصدر AbstractStringBuilder.
دعونا نلقي نظرة على طرق التحميل الزائد الثلاثة
لقد وجد أن جميع مُنشئو الطبقة الوالدية AbstractStringBuilder تسمى.
وقد وجد أن مجموعة Char التي تخزن فيها بيانات StringBuffer ليست من النوع النهائي ، مما يعني أنه يمكن تغييرها ، ولا تزال السلاسل المبنية لديها مساحة حرة لربط الأوتار.
في StringBuffer ، نستخدم دالة Append () لتقصير السلاسل. يمكننا أن نعتقد أنه على الرغم من أنه لا يزال هناك في صفيف Char ، إلا أنه لا يكفي بالتأكيد لصقها طوال الوقت. لذلك ، من الضروري أن ننظر إلى تنفيذ التعليمات البرمجية المصدر لوظيفة إلحاق.
تحقق من طريقة إلحاق الفئة الأصل AbstractStringBuilder
عندما لا تكون صفيف القيمة قادرة على السعة الكافية ، يتم إنشاء صفيف قيمة جديد لتخزين السلسلة. في هذه المرحلة ، يجب أن تفهم مبدأ الربط سلسلة StringBuffer. عندما تكون صفيف قيمة char غير كافية ، سيتم إنشاء مجموعة سعة أكبر لتخزينها. الكفاءة أعلى بكثير من الكفاءة من السلسلة.
3.StringBuilder
StringBuilder و StringBuffer هما شقيقان ، واستخدامهما هو نفسه بشكل أساسي. الفرق هو أن StringBuffer متزامن وآمن مؤشر ترابط ، في حين أن StringBuilder لا يضمن المزامنة وآمنة مؤشر الترابط.
يعد StringBuilder أسرع من StringBuffer في معظم التطبيقات ، وعندما يتم الوصول إلى المخازن المؤقتة للسلسلة بواسطة مؤشر ترابط واحد ، يوصى باستخدام StringBuilder أولاً.
ما سبق هو اختيار سلسلة Java التي قدمها المحرر. آمل أن يكون ذلك مفيدًا لك. إذا كان لديك أي أسئلة ، فيرجى ترك رسالة لي وسوف يرد المحرر إليك في الوقت المناسب. شكرا جزيلا لدعمكم لموقع wulin.com!