[Java] التعامل مع الفئة Java StringBuilder
منتدى مصر التقني :: قسم لغات البرمجة Programming languages :: لغة الجافا Java :: أساسيات اللغة Java Basics
صفحة 1 من اصل 1 • شاطر
[Java] التعامل مع الفئة Java StringBuilder
أهلا بكم
هى إحدى الفئات التى توفرها لغة الجافا منذ الاصدار JDK 1.5 للتعامل مع مع سلسلة نصية قابلة للتغيير و التعديل بطريقة حيوية من (إلحاق، وإدراج، وحذف وتعديل وغيرها) فهى تشبة الى حد كبير الفئة StringBuffer التى تحدثنا عليها فى مقال سابق وربما يكون الفرق الوحيد بينهما أن الفئة #StringBuilder متزامنة synchronized فى حين أن الفئة #StringBuffer غير متزامنة non-synchronized
اهم ثلاث مشيدات الفئة #StringBuilder التى يمكن استخدامها لانشاء و التعامل مع النصوص من خلال تلك الفئة على النحو التالى :
1_المشيد الاول :
ينشىء مخزن مؤقت فارغ لسلسلة نصية مع السعة الأولية لـ 16حرف
2_ المشيد الثاني :
ينشىء مخزن مؤقت لسلسلة نصية بقيمة السلسة المحددة
3_المشيد الثالث :
ينشىء مخزن فارع مؤقت لسلسلة نصية مع السعة المحددة كطول
تحتوي الفئة #StringBuilder على العديد من الطرق و الدوال التى تساعدنا فى التعامل مع سلاسل البيانات من تعديل و تغير و الحاق و خلافة و ذلك على النحو التالى :
1_الطريقة #append
تقوم تلك الطريقة بإلحاق قيمة نصية الى المخزن الموقت #StringBuilder ....مثال : الحاق كلمة #java الى الكلمة #Hello على النحو التالى :
المخرجات :
2_ الطريقة #insert
تقوم تلك الطريقة بادراج قيمة نصية للمخزن الموقت StringBuilder#r مع تحديد موضع الادراج ... المثال التالى يوضح كيفية ادراج الكلمة #Java بعد الحرف الاول للقيمة المخزنة فى #StringBuilder :
المخرجات :
3_الطريقة #replace
تقوم تلك الطريقة باستبدال القيمة النصية بالمخزن #StringBuilder بالقيمة الحالية او المعطاة اليها و يتم ذلك من ذلك تحديد موضع الاستبدال و عدد الاحرف التى سيتم اسبدالها من القيمة #StringBuilder ....المثال التالى يوضح الفكرة :
المخرجات :يمكنك ملاحظة أن عملية الاستبدال تمت بعد الحرف الاول وتم استبدال عدد 3 احرف من الكلمة الاصلية #Hello بالكلمة Java
4_الطريقة #delete
تقوم تلك الطريقة بحذف القيمة النصية بالمخزن #StringBuilder و يمكن تحديد موضع عملية الحذف وايضا عدد ما يتم حذفة ...المثال التالى يوضح الفكرة :
المخرجات :
5_ الطريقة #reverse
تقوم تلك الطريقة بعكس السلسة النصية الحالية المخزنة فى #StringBuilder ....مثال يوضح الفكرة
المخرجات :
6_ الطريقة #capacity
تقوم تلك الطريقة بارجاع سعة المخزن #StringBuilder ...مثال توضيحيى :
المخرجات :
16
16
34
7_ الطريقة #ensureCapacity
تضمن طريقة #ensureCapacity أن السعة المحددة هي الحد الأدنى للسعة الحالية. أما إذا كان أكبر من السعة الحالية ، فإنه يزيد السعة بواسطة (oldcapacity * 2) +2. على سبيل المثال ، إذا كانت سعتك الحالية 16 ، فسوف تكون (16 * 2) + 2 = 34.
تحياتى لك
_الفئة Java StringBuilder
هى إحدى الفئات التى توفرها لغة الجافا منذ الاصدار JDK 1.5 للتعامل مع مع سلسلة نصية قابلة للتغيير و التعديل بطريقة حيوية من (إلحاق، وإدراج، وحذف وتعديل وغيرها) فهى تشبة الى حد كبير الفئة StringBuffer التى تحدثنا عليها فى مقال سابق وربما يكون الفرق الوحيد بينهما أن الفئة #StringBuilder متزامنة synchronized فى حين أن الفئة #StringBuffer غير متزامنة non-synchronized
_مشيدات الفئة StringBuilder
اهم ثلاث مشيدات الفئة #StringBuilder التى يمكن استخدامها لانشاء و التعامل مع النصوص من خلال تلك الفئة على النحو التالى :
1_المشيد الاول :
- الكود:
StringBuilder()
ينشىء مخزن مؤقت فارغ لسلسلة نصية مع السعة الأولية لـ 16حرف
2_ المشيد الثاني :
- الكود:
StringBuilder(String str)
ينشىء مخزن مؤقت لسلسلة نصية بقيمة السلسة المحددة
3_المشيد الثالث :
- الكود:
StringBuilder(int length)
ينشىء مخزن فارع مؤقت لسلسلة نصية مع السعة المحددة كطول
طرق و دوال الفئة StringBuilder
تحتوي الفئة #StringBuilder على العديد من الطرق و الدوال التى تساعدنا فى التعامل مع سلاسل البيانات من تعديل و تغير و الحاق و خلافة و ذلك على النحو التالى :
1_الطريقة #append
تقوم تلك الطريقة بإلحاق قيمة نصية الى المخزن الموقت #StringBuilder ....مثال : الحاق كلمة #java الى الكلمة #Hello على النحو التالى :
- الكود:
class StringBuilderExample{
public static void main(String args[]){
StringBuilder sb=new StringBuilder("Hello ");
sb.append("Java");
System.out.println(sb);
}
}
المخرجات :
Hello Java
2_ الطريقة #insert
تقوم تلك الطريقة بادراج قيمة نصية للمخزن الموقت StringBuilder#r مع تحديد موضع الادراج ... المثال التالى يوضح كيفية ادراج الكلمة #Java بعد الحرف الاول للقيمة المخزنة فى #StringBuilder :
- الكود:
class StringBuilderExample2{
public static void main(String args[]){
StringBuilder sb=new StringBuilder("Hello ");
sb.insert(1,"Java");
System.out.println(sb);
}
}
المخرجات :
HJavaello
3_الطريقة #replace
تقوم تلك الطريقة باستبدال القيمة النصية بالمخزن #StringBuilder بالقيمة الحالية او المعطاة اليها و يتم ذلك من ذلك تحديد موضع الاستبدال و عدد الاحرف التى سيتم اسبدالها من القيمة #StringBuilder ....المثال التالى يوضح الفكرة :
- الكود:
class StringBuilderExample3{
public static void main(String args[]){
StringBuilder sb=new StringBuilder("Hello");
sb.replace(1,3,"Java");
System.out.println(sb);
}
}
المخرجات :يمكنك ملاحظة أن عملية الاستبدال تمت بعد الحرف الاول وتم استبدال عدد 3 احرف من الكلمة الاصلية #Hello بالكلمة Java
HJavalo
4_الطريقة #delete
تقوم تلك الطريقة بحذف القيمة النصية بالمخزن #StringBuilder و يمكن تحديد موضع عملية الحذف وايضا عدد ما يتم حذفة ...المثال التالى يوضح الفكرة :
- الكود:
class StringBuilderExample4{
public static void main(String args[]){
StringBuilder sb=new StringBuilder("Hello");
sb.delete(1,3);
System.out.println(sb);
}
}
المخرجات :
Ho
5_ الطريقة #reverse
تقوم تلك الطريقة بعكس السلسة النصية الحالية المخزنة فى #StringBuilder ....مثال يوضح الفكرة
- الكود:
class StringBuilderExample5{
public static void main(String args[]){
StringBuilder sb=new StringBuilder("Hello");
sb.reverse();
System.out.println(sb);//prints olleH
}
}
المخرجات :
olleH
6_ الطريقة #capacity
تقوم تلك الطريقة بارجاع سعة المخزن #StringBuilder ...مثال توضيحيى :
- الكود:
class StringBuilderExample6{
public static void main(String args[]){
StringBuilder sb=new StringBuilder();
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_ الطريقة #ensureCapacity
تضمن طريقة #ensureCapacity أن السعة المحددة هي الحد الأدنى للسعة الحالية. أما إذا كان أكبر من السعة الحالية ، فإنه يزيد السعة بواسطة (oldcapacity * 2) +2. على سبيل المثال ، إذا كانت سعتك الحالية 16 ، فسوف تكون (16 * 2) + 2 = 34.
- الكود:
class StringBuilderExample7{
public static void main(String args[]){
StringBuilder sb=new StringBuilder();
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
}
}
تحياتى لك
زهراء- ........
- تاريخ التسجيل : 18/02/2011
المساهمات : 438
النقاط : 769
التقيم : 67
الدولة :
الجنس :
رد: [Java] التعامل مع الفئة Java StringBuilder
مجهود عظيم تشكرى عليه @زهراء
ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم
| |
منتدى مصر التقني :: قسم لغات البرمجة Programming languages :: لغة الجافا Java :: أساسيات اللغة Java Basics
صفحة 1 من اصل 1
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى
» تصميم تطبيق جوال لمغسلة ملابس
» تصميم تطبيق جوال لشركة عقارات
» شركة مكافحة النمل الابيض بالرياض
» تصميم تطبيق جوال لنقل الاثاث
» هناجر
» تصميم تطبيق جوال لمتجر ورد
» تصميم تطبيق جوال لسلسلة مطاعم
» تصميم تطبيق جوال لتوصيل الطلبات
» مظلات سيارات متحركة