يتم استخدام فئة Java StringBuffer لإنشاء كائنات سلسلة قابلة للتغيير (قابلة للتعديل). فئة StringBuffer في Java هي نفس فئة String باستثناء أنها قابلة للتغيير، أي يمكن تغييرها.
ملحوظة: فئة Java StringBuffer آمنة لسلاسل الرسائل، أي أنه لا يمكن لسلاسل رسائل متعددة الوصول إليها في وقت واحد. لذلك فهو آمن وسيؤدي إلى أمر.
منشئون مهمون لفئة StringBuffer
البناء | وصف |
---|---|
StringBuffer() | يقوم بإنشاء مخزن مؤقت فارغ للسلسلة بسعة أولية تبلغ 16. |
StringBuffer (سلسلة سلسلة) | يقوم بإنشاء مخزن مؤقت لسلسلة مع السلسلة المحددة. |
StringBuffer (سعة كثافة العمليات) | يقوم بإنشاء مخزن مؤقت لسلسلة فارغة بالسعة المحددة كالطول. |
طرق مهمة لفئة StringBuffer
المعدل والنوع | طريقة | وصف |
---|---|---|
StringBuffer المتزامنة العامة | إلحاق (سلسلة ق) | يتم استخدامه لإلحاق السلسلة المحددة بهذه السلسلة. طريقة الإلحاق () مثقلة مثل إلحاق (شار)، إلحاق (منطقي)، إلحاق (int)، إلحاق (عائم)، إلحاق (مزدوج) إلخ. |
StringBuffer المتزامنة العامة | إدراج (إزاحة int، سلسلة s) | يتم استخدامه لإدراج السلسلة المحددة بهذه السلسلة في الموضع المحدد. طريقة الإدراج () مثقلة مثل الإدراج (int، char)، إدراج (int، منطقي)، إدراج (int، int)، إدراج (int، float)، إدراج (int، double) إلخ. |
StringBuffer المتزامنة العامة | استبدال (int startIndex، int endIndex، String str) | يتم استخدامه لاستبدال السلسلة من startIndex وendIndex المحددين. |
StringBuffer المتزامنة العامة | حذف (int startIndex، int endIndex) | يتم استخدامه لحذف السلسلة من startIndex وendIndex المحددين. |
StringBuffer المتزامنة العامة | يعكس() | يستخدم لعكس السلسلة. |
كثافة العمليات العامة | سعة() | يتم استخدامه لإرجاع القدرة الحالية. |
الفراغ العام | ضمان السعة (الحد الأدنى للسعة) | يتم استخدامه للتأكد من أن السعة تساوي على الأقل الحد الأدنى المحدد. |
حرف عام | حرف (مؤشر كثافة العمليات) | يتم استخدامه لإرجاع الحرف إلى الموضع المحدد. |
كثافة العمليات العامة | طول() | يتم استخدامه لإرجاع طول السلسلة، أي إجمالي عدد الأحرف. |
سلسلة عامة | سلسلة فرعية (int beginIndex) | يتم استخدامه لإرجاع السلسلة الفرعية من beginIndex المحدد. |
سلسلة عامة | سلسلة فرعية (int beginIndex، int endIndex) | يتم استخدامه لإرجاع السلسلة الفرعية من beginIndex وendIndex المحددين. |
ما هي السلسلة القابلة للتغيير؟
تُعرف السلسلة التي يمكن تعديلها أو تغييرها بالسلسلة القابلة للتغيير. تُستخدم فئات StringBuffer وStringBuilder لإنشاء سلاسل قابلة للتغيير.
1) طريقة إلحاق فئة StringBuffer ().
تقوم طريقة الإلحاق () بربط الوسيطة المعطاة بهذه السلسلة.
StringBufferExample.java
class StringBufferExample{ public static void main(String args[]){ StringBuffer sb=new StringBuffer('Hello '); sb.append('Java');//now original string is changed System.out.println(sb);//prints Hello Java } }
انتاج:
Hello Java
2) طريقة إدراج StringBuffer ().
يقوم أسلوب الإدراج () بإدراج السلسلة المعطاة بهذه السلسلة في الموضع المحدد.
StringBufferExample2.java
class StringBufferExample2{ public static void main(String args[]){ StringBuffer sb=new StringBuffer('Hello '); sb.insert(1,'Java');//now original string is changed System.out.println(sb);//prints HJavaello } }
انتاج:
HJavaello
3) طريقة استبدال StringBuffer ().
يستبدل أسلوب الاستبدال () السلسلة المعطاة من beginIndex وendIndex المحددين.
StringBufferExample3.java
class StringBufferExample3{ public static void main(String args[]){ StringBuffer sb=new StringBuffer('Hello'); sb.replace(1,3,'Java'); System.out.println(sb);//prints HJavalo } }
انتاج:
HJavalo
4) طريقة حذف StringBuffer ().
تقوم طريقة الحذف () لفئة StringBuffer بحذف السلسلة من beginIndex المحدد إلى endIndex.
StringBufferExample4.java
class StringBufferExample4{ public static void main(String args[]){ StringBuffer sb=new StringBuffer('Hello'); sb.delete(1,3); System.out.println(sb);//prints Hlo } }
انتاج:
Hlo
5) طريقة StringBuffer العكسية ().
تعمل الطريقة العكسية () لفئة StringBuilder على عكس السلسلة الحالية.
StringBufferExample5.java
class StringBufferExample5{ public static void main(String args[]){ StringBuffer sb=new StringBuffer('Hello'); sb.reverse(); System.out.println(sb);//prints olleH } }
انتاج:
olleH
6) طريقة قدرة StringBuffer ().
تقوم طريقة السعة () لفئة StringBuffer بإرجاع السعة الحالية للمخزن المؤقت. السعة الافتراضية للمخزن المؤقت هي 16. إذا زاد عدد الأحرف عن سعته الحالية، فإنه يزيد من السعة بمقدار (oldcapacity*2)+2. على سبيل المثال، إذا كانت قدرتك الحالية 16، فستكون (16*2)+2=34.
StringBufferExample6.java
class StringBufferExample6{ public static void main(String args[]){ StringBuffer sb=new StringBuffer(); System.out.println(sb.capacity());//default 16 sb.append('Hello'); System.out.println(sb.capacity());//now 16 sb.append('java is my favourite language'); System.out.println(sb.capacity());//now (16*2)+2=34 i.e (oldcapacity*2)+2 } }
انتاج:
16 16 34
7) طريقة StringBuffer تضمن السعة ().
تضمن طريقة ضمان السعة () لفئة StringBuffer أن السعة المحددة هي الحد الأدنى للسعة الحالية. وإذا كانت أكبر من السعة الحالية، فإنها تزيد السعة بمقدار (القدرة القديمة*2)+2. على سبيل المثال، إذا كانت قدرتك الحالية 16، فستكون (16*2)+2=34.
StringBufferExample7.java
class StringBufferExample7{ public static void main(String args[]){ StringBuffer sb=new StringBuffer(); System.out.println(sb.capacity());//default 16 sb.append('Hello'); System.out.println(sb.capacity());//now 16 sb.append('java is my favourite language'); System.out.println(sb.capacity());//now (16*2)+2=34 i.e (oldcapacity*2)+2 sb.ensureCapacity(10);//now no change System.out.println(sb.capacity());//now 34 sb.ensureCapacity(50);//now (34*2)+2 System.out.println(sb.capacity());//now 70 } }
انتاج:
16 16 34 34 70