StringBuffer في Java: 11 طريقة شائعة يجب أن يعرفها كل مطور Java

نشرت: 2021-05-26

جدول المحتويات

مقدمة إلى StringBuffer في Java

StringBuffer في java هي فئة ترث العمليات من فئة java.lang.Object. إنها فئة نظير من String تُستخدم لإنشاء سلسلة قابلة للتعديل أو قابلة للتغيير. يوفر الكثير من وظائف String فيما عدا أنه يمكن تغييره ، أي أنه يمثل تسلسلات أحرف قابلة للكتابة وقابلة للنمو بدلاً من متواليات أحرف ثابتة وثابتة الطول. فيما يلي بعض النقاط الأساسية حول java.lang.StringBuffer في Java:

يمكن تغيير محتوى وطول تسلسل الأحرف من خلال استدعاءات طريقة مختلفة.

· خيط آمن ، أي آمن للاستخدام بواسطة خيوط متعددة

كل StringBuffer في جافا لديه القدرة.

يمكن إلحاق السلاسل الفرعية والأحرف في النهاية أو إدراجها في المنتصف . ينمو تلقائيًا ويفسح المجال للإضافات. في كثير من الأحيان ، يتم تخصيص عدد أكبر من الأحرف مسبقًا أكثر من اللازم لإتاحة مساحة للنمو.

إليك كيفية الإعلان عن StringBuffer في فئة Java:

العام النهائي فئة StringBuffer

يمتد الكائن

تنفذ Serializable ، CharSequence

بناة فئة StringBuffer

1. StringBuffer () - يستخدم هذا لإنشاء مخزن مؤقت للسلسلة بسعة أولية من 16 حرفًا ولا يحتوي على أحرف. بناء الجملة:

StringBuffer a = new StringBuffer () ،

2. StringBuffer (CharSequence seq) - يستخدم هذا لإنشاء مخزن مؤقت لسلسلة يحتوي على نفس الأحرف الموجودة في CharSequence.

3. StringBuffer (سعة int) - يستخدم هذا لإنشاء مخزن مؤقت للسلسلة يتم تحديد سعته الأولية وبدون أحرف. بناء الجملة:

StringBuffer a = جديد StringBuffer (10) ؛

4. StringBuffer (String str) - يستخدم هذا لإنشاء مخزن مؤقت للسلسلة بمحتوى السلسلة المحدد. بناء الجملة:

StringBuffer a = new StringBuffer (“stringbuffer in java”)؛

قراءة: الفرق بين مخازن السلسلة وبناة السلاسل

11 الطرق الشعبية

1) StringBuffer في أسلوب Java Append ()

.append () يستخدم لسلسلة السلسلة والوسيطة المحددين. هذا مثال:

استيراد java.io. * ؛

فئة عامة عازلة {

الرئيسية العامة الثابتة الفراغ (سلسلة [] args)

{

StringBuffer a = new StringBuffer (“stringbuffer”)؛

a.append ("في Java") ؛

System.out.println (أ) ؛

أ.لحق (0) ؛

System.out.println (أ) ؛

}

}

انتاج:

2) StringBuffer في طريقة إدراج () Java

تُستخدم طريقة .insert () لإدراج سلسلة معيّنة مع السلسلة الرئيسية في الموضع المحدد. هذا مثال:

استيراد java.io. * ؛

فئة عامة عازلة {

الرئيسية العامة الثابتة الفراغ (سلسلة [] args)

{

StringBuffer a = new StringBuffer (“stringbuffer”)؛

a.insert (5 ، "من أجل") ؛

System.out.println (أ) ؛

أ.إدخال (0 ، 5) ؛

System.out.println (أ) ؛

أ.إدخال (3 ، خطأ) ؛

System.out.println (أ) ؛

أ. إدراج (5 ، 41.55 د) ؛

System.out.println (أ) ؛

أ. إدراج (8 ، 41.55f) ؛

System.out.println (أ) ؛

char arr [] = {'j'، 'a'، 'v'، 'a'}؛

أ. إدراج (2 ، آر) ؛

System.out.println (أ) ؛

}}

انتاج:

اقرأ أيضًا: أفكار وموضوعات مشروع Java

3) StringBuffer في طريقة استبدال جافا ()

.replace () يستخدم لاستبدال جزء من السلسلة كما هو محدد في النطاق (beginIndex ، endIndex). هذا مثال:

استيراد java.io. * ؛

فئة عامة عازلة {

الرئيسية العامة الثابتة الفراغ (سلسلة [] args)

{

StringBuffer a = new StringBuffer (“stringbuffer”)؛

أ. الاستبدال (5 ، 8 ، "هي") ؛

System.out.println (أ) ؛

}

}

انتاج:

4) StringBuffer في طريقة حذف () جافا

.delete () يستخدم لحذف السلسلة كما هو محدد في النطاق (startIndex، endIndex).

.deleteCharAt () يستخدم لحذف الحرف في فهرس معين. تقوم هذه الطريقة بإرجاع كائن التخزين المؤقت الناتج. هذا مثال:

استيراد java.io. * ؛

فئة عامة عازلة {

الرئيسية العامة الثابتة الفراغ (سلسلة [] args)

{

StringBuffer a = new StringBuffer ("مخزن سلسلة في جافا")؛

أ.حذف (0 ، 6) ؛

System.out.println (أ) ؛

a.deleteCharAt (7) ،

System.out.println (أ) ؛

}

}

انتاج:

5) StringBuffer في طريقة Java Reverse ()

.reverse () كما يوحي الاسم يستخدم لعكس السلسلة المحددة. هذا مثال:

استيراد java.io. * ؛

فئة عامة عازلة {

الرئيسية العامة الثابتة الفراغ (سلسلة [] args)

{

StringBuffer a = new StringBuffer (“stringbuffer”)؛

أ. العكس () ؛

System.out.println (أ) ؛

}

}

انتاج:

6) StringBuffer في طريقة Java Capacity ()

يتم استخدام .capacity () من StringBuffer في فئة java لإرجاع السعة الحالية للمخزن المؤقت. 16 هي القدرة الافتراضية. تزداد السعة بزيادة عدد الأحرف. السعة الجديدة = (السعة القديمة * 2) +2. على سبيل المثال ، إذا كانت السعة الحالية 16 ، فإن السعة الجديدة ستكون 32 + 2 = 34.

يستخدم .length لإيجاد طول StringBuffer في جافا. علي سبيل المثال:

استيراد java.io. * ؛

فئة عامة عازلة {

الرئيسية العامة الثابتة الفراغ (سلسلة [] args)

{

StringBuffer a = new StringBuffer (“stringbuffer”)؛

int p = a.length () ؛

int q = a.capacity () ؛

System.out.println (“طول السلسلة =” + p)؛

System.out.println (“قدرة السلسلة =” + q)؛

}

}

انتاج:

احصل على شهادات هندسة البرمجيات عبر الإنترنت من أفضل الجامعات في العالم. اربح برامج PG التنفيذية أو برامج الشهادات المتقدمة أو برامج الماجستير لتتبع حياتك المهنية بشكل سريع.

7) StringBuffer في Java ضمان القدرة () الأسلوب

.ensureCapacity () لفئة stringbuffer تُستخدم للتأكد من أن السعة المحددة هي الحد الأدنى للسعة الحالية. إذا كانت السعة المعطاة أكبر من السعة الحالية ، تصبح السعة الجديدة (السعة القديمة * 2) +2. أي تصبح السعة 34 إذا كانت السعة القديمة هي 16. على سبيل المثال:

فئة عامة عازلة {

العامة الثابتة الفراغ الرئيسي (سلاسل سلسلة []) {

StringBuffer a = new StringBuffer () ،

System.out.println (a.capacity ()) ؛

a.append ("مرحبًا") ؛

System.out.println (a.capacity ()) ؛

أ.لحق ("جافا") ؛

System.out.println (a.capacity ()) ؛

أ- قدرة الضمان (10) ؛

System.out.println (a.capacity ()) ؛

أ- قدرة الضمان (50) ؛

System.out.println (a.capacity ()) ؛

}

}

انتاج:

الدفع: راتب مطور Java في الهند

8. charAt (فهرس int) - تُستخدم هذه الطريقة لإرجاع الحرف في الفهرس المحدد.

9. السلسلة الفرعية (int begIndex) - تُستخدم هذه الطريقة لإرجاع السلسلة الفرعية لسلسلة معينة بدءًا من startIndex.

10. السلسلة الفرعية (int startIndex، int endIndex) - تُستخدم هذه الطريقة لإرجاع السلسلة الفرعية المحددة للسلسلة التي تبدأ من startIndex وتنتهي في endIndex.

11. void trimToSize () - تُستخدم هذه الطريقة لتقليل مساحة التخزين لتسلسل الأحرف

الفرق بين String و StringBuffer في جافا

نستخدم هذا المثال لإنشاء كائنات من فئة StringBuffer و String وتعديلها. نرى أنه يتم تعديل كائن StringBuffer ، بينما لا يتم تعديل String. انظر إلى المثال أدناه:

فئة عامة عازلة {

الرئيسية العامة الثابتة الفراغ (سلاسل سلسلة [])

{

String str = "سلسلة" ؛

str.concat ("المخزن المؤقت") ؛

System.out.println (str) ؛

StringBuffer strB = new StringBuffer (“سلسلة”)؛

strB.append ("المخزن المؤقت") ؛

System.out.println (strB) ؛

}

}

انتاج:

Explanation: الإخراج هو من هذا القبيل لأن السلاسل غير قابلة للتغيير. إذا حاولنا ربط كائن السلسلة ، فلن يتم تغييره. ومع ذلك ، فإن StringBuffer في جافا ينشئ كائنات قابلة للتغيير. وبالتالي ، يمكن تغييره.

نقاط مثيرة للاهتمام

  1. يمتد فئة الكائن.
  2. واجهات StringBuffer المطبقة في جافا هي Appendable و Serializable و CharSequence.
  3. يمكن مزامنة أساليب StringBuffer حيثما كان ذلك ضروريًا. هذا يعني أن جميع العمليات تتصرف كما لو كانت تحدث بترتيب تسلسلي ما.
  4. عند حدوث عملية تتضمن تسلسل المصدر ، تتم مزامنة هذه الفئة فقط على المخزن المؤقت للسلسلة وليس المصدر.
  5. بعض الطرق الموروثة من فئة الكائن هي equals و clone و getClass و notify و notifyAll و hashCode و finalize.

خاتمة

ينشئ StringBuffer في جافا كائنات سلسلة قابلة للتعديل. وبالتالي ، يمكننا استخدام StringBuffer لإلحاق واستبدال وعكس وسلسلة وتعديل تسلسل الأحرف أو السلاسل. تلتزم الطرق ضمن فئة StringBuffer بهذه الوظائف. في الخلاصة ، يتم استخدام StringBuffer في جافا فقط عندما تقوم خيوط متعددة بتعديل محتويات StringBuffer. إنه أسرع من String.

في هذه المقالة ، تعلمنا كل التفاصيل حول Java StringBuffer . إذا كنت تتطلع إلى معرفة المزيد عن Java والارتقاء في حياتك المهنية التقنية ، فاستكشف الدورات التي تقدمها upGrad - أكبر شركة للتعليم العالي عبر الإنترنت في الهند.

إذا كنت مهتمًا بمعرفة المزيد حول Java ، وتطوير البرامج المتكاملة ، فراجع برنامج upGrad & IIIT-B التنفيذي PG في تطوير البرمجيات - التخصص في تطوير المكدس الكامل المصمم للمهنيين العاملين ويقدم أكثر من 500 ساعة من التدريب الصارم ، أكثر من 9 مشاريع ، ومهام ، وحالة خريجي IIIT-B ، ومشاريع التخرج العملية العملية والمساعدة في العمل مع الشركات الكبرى.

انطلق في وظيفة أحلامك

تقدم بطلب للحصول على شهادة PG المرتبطة بالوظيفة من upGrad في هندسة البرمجيات