[Java] التعامل مع الفئة Strings Class
منتدى مصر التقني :: قسم لغات البرمجة Programming languages :: لغة الجافا Java :: أساسيات اللغة Java Basics
صفحة 1 من اصل 1 • شاطر
[Java] التعامل مع الفئة Strings Class
أهلا بكم اخوانى
مقال اليوم عن كيفية التعامل مع السلاسل النصية فى لغة الجافا، والتي تعتبر من اهم البيانات التى تستخدم على نطاق واسع في برمجة تطبيقات لغة الجافا
و لكى تستطيع التعامل مع السلاسل النصية يجب عليك أن تفهم جيدا الفئة Strings Class التى توفرها لغة Java لإنشاء ومعالجة السلاسل.
1_ما هي السلسلة Strings في جافا
بشكل عام ، يتم تمثيل السلاسل النصية فى ذاكرة الحاسوب على هيئة سلسلة من الأحرف ، ولسيت مجرد نصوص أو كلمات و إنما هى فى الاساس أحرف . ولكن في لغة Java يتم استخدام فئة java.lang.String لإنشاء كائن سلسلة يمثل سلسلة من الأحرف فيتم تحويل الاحرف تلك الى نص
فمثلا اذا تم انشاء مصفوفة احرف من الحروف h-e-l-l-o ثم استخدام كائن السلسة String ثم طباعة هذا الكائن سيتم طباعة الكلمة hello و ليس احرف على النحو التالى :
المخرجات :
2_كيفية إنشاء كائن سلسلة String ؟
هناك طريقتان لإنشاء كائن سلسلة:
الاولى :باستخدام مرجع الكائن object reference
لا تقوم هذة بانشاء كائن فى حد ذاته وانما تقوم بانشاء مرجع للكائن #reference هو عنوان يشير إلى مكان تخزين متغيرات وأساليب هذا الكائن ويتم ذلك على النحو التالى :
الثانية :بواسطة الكلمة المحجوزة new
و اليكم مثال كامل لانشاء كائنات السلسلة بالطرقتين على النحو التالى :
المخرجات :
java
strings
example
3_أساليب الفئة Strings Class
توفر الفئة java.lang.String العديد من الطرق المفيدة لتنفيذ بعض العمليات على السلاسل النصية و سنحاول شرحها على النحو التالى :
_ الطريقة charAt
تقوم هذه الطريقة بإرجاع الحرف الموجود في فهرس السلسلة المحدد.بمعنى انها تقوم بارجاع رقم الحرف فى السلسلة النصية التى تبدأ من الصفر.ويتم بناء الجملة على النحو التالى :
مثال توضيحي :المثال التالى يوضح كيفية ارجاع قمية الحرف فى السلسة بناء على رقم الفهرس له
المخرجات :
a
_الطريقة length
هذه الطريقة تقوم بإرجاع طول السلسة النصية مثال للتوضيح
المخرجات :
_الطريقة concat
هذه الطريقة تلحق سلسلة نصية واحدة بنهاية سلسلة أخرى مثال للتوضيح
المخرجات :
_الطريقة copyValueOf
تقوم هذه الطريقة بإرجاع سلسلة تمثل تسلسل الأحرف في مصفوفة احرف المحدد.مثال :
المخرجات :
_الطريقة equals
يقارن هذة الطريقة السلسلة النصية بالكائن المحدد. تكون النتيجة صحيحة ture إذا لم تكن الوسيطة خالية وكانت عبارة عن كائن سلسلة يمثل نفس تسلسل الأحرف في هذا الكائن.مثال :
المخرجات :
الطريقة :endsWith
تختبر هذه الطريقة إذا كانت هذه السلسلة تنتهي باللاحقة المحددة مثال للتوضيح
المخرجات :
الطريقة :replace
تُرجع هذه الطريقة سلسلة جديدة تنتج عن استبدال احرف قديمة باحرف جديدة على النحو التالى :
المخرجات :
الطريقة :replaceAll
يستبدل هذا الأسلوب كل سلسلة فرعية من هذه السلسلة التي تطابق التعبير المعتاد المحدد مع الاستبدال المحدد....ويتم بناء الجملة على النحو التالى :
حيث أن :
regex - التعبير المعتاد الذي ستتم مطابقة هذه السلسلة معه.
replacement - السلسلة التي ستحل محل التعبير الموجود.
مثال :
و لنا بقية مع تكلمة المقال
مقال اليوم عن كيفية التعامل مع السلاسل النصية فى لغة الجافا، والتي تعتبر من اهم البيانات التى تستخدم على نطاق واسع في برمجة تطبيقات لغة الجافا
و لكى تستطيع التعامل مع السلاسل النصية يجب عليك أن تفهم جيدا الفئة Strings Class التى توفرها لغة Java لإنشاء ومعالجة السلاسل.
1_ما هي السلسلة Strings في جافا
بشكل عام ، يتم تمثيل السلاسل النصية فى ذاكرة الحاسوب على هيئة سلسلة من الأحرف ، ولسيت مجرد نصوص أو كلمات و إنما هى فى الاساس أحرف . ولكن في لغة Java يتم استخدام فئة java.lang.String لإنشاء كائن سلسلة يمثل سلسلة من الأحرف فيتم تحويل الاحرف تلك الى نص
فمثلا اذا تم انشاء مصفوفة احرف من الحروف h-e-l-l-o ثم استخدام كائن السلسة String ثم طباعة هذا الكائن سيتم طباعة الكلمة hello و ليس احرف على النحو التالى :
- الكود:
public class StringDemo {
public static void main(String args[]) {
char[] helloArray = { 'h', 'e', 'l', 'l', 'o', '.' };
String helloString = new String(helloArray);
System.out.println( helloString );
}
}
المخرجات :
hello.
2_كيفية إنشاء كائن سلسلة String ؟
هناك طريقتان لإنشاء كائن سلسلة:
الاولى :باستخدام مرجع الكائن object reference
لا تقوم هذة بانشاء كائن فى حد ذاته وانما تقوم بانشاء مرجع للكائن #reference هو عنوان يشير إلى مكان تخزين متغيرات وأساليب هذا الكائن ويتم ذلك على النحو التالى :
- الكود:
String s="welcome";
الثانية :بواسطة الكلمة المحجوزة new
- الكود:
String s=new String("Welcome");
و اليكم مثال كامل لانشاء كائنات السلسلة بالطرقتين على النحو التالى :
- الكود:
public class StringExample{
public static void main(String args[]){
String s1="java";//إنشاء مرجع كائن
char ch[]={'s','t','r','i','n','g','s'};
String s2=new String(ch);//تحويل مصفوفة احرف الى نص
String s3=new String("example");//إنشاء كائن سلسلة جديد
System.out.println(s1);
System.out.println(s2);
System.out.println(s3);
}}
المخرجات :
java
strings
example
3_أساليب الفئة Strings Class
توفر الفئة java.lang.String العديد من الطرق المفيدة لتنفيذ بعض العمليات على السلاسل النصية و سنحاول شرحها على النحو التالى :
_ الطريقة charAt
تقوم هذه الطريقة بإرجاع الحرف الموجود في فهرس السلسلة المحدد.بمعنى انها تقوم بارجاع رقم الحرف فى السلسلة النصية التى تبدأ من الصفر.ويتم بناء الجملة على النحو التالى :
- الكود:
public char charAt(int index)
مثال توضيحي :المثال التالى يوضح كيفية ارجاع قمية الحرف فى السلسة بناء على رقم الفهرس له
- الكود:
public class Test {
public static void main(String args[]) {
String s = "Strings are immutable";
char result = s.charAt(8);
System.out.println(result);
}
}
المخرجات :
a
_الطريقة length
هذه الطريقة تقوم بإرجاع طول السلسة النصية مثال للتوضيح
- الكود:
public class StringDemo {
public static void main(String args[]) {
String palindrome = "Dot saw I was Tod";
int len = palindrome.length();
System.out.println( "String Length is : " + len );
}
}
المخرجات :
String Length is : 17
_الطريقة concat
هذه الطريقة تلحق سلسلة نصية واحدة بنهاية سلسلة أخرى مثال للتوضيح
- الكود:
public class Test {
public static void main(String args[]) {
String s = "ahmed";
s = s.concat(" all the time");
System.out.println(s);
}
}
المخرجات :
ahmed all the time
_الطريقة copyValueOf
تقوم هذه الطريقة بإرجاع سلسلة تمثل تسلسل الأحرف في مصفوفة احرف المحدد.مثال :
- الكود:
public class Test {
public static void main(String args[]) {
char[] Str1 = {'h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd'};
String Str2 = "";
Str2 = Str2.copyValueOf( Str1 );
System.out.println("Returned String: " + Str2);
}
}
المخرجات :
Returned String: hello world
_الطريقة equals
يقارن هذة الطريقة السلسلة النصية بالكائن المحدد. تكون النتيجة صحيحة ture إذا لم تكن الوسيطة خالية وكانت عبارة عن كائن سلسلة يمثل نفس تسلسل الأحرف في هذا الكائن.مثال :
- الكود:
public class Test {
public static void main(String args[]) {
String Str1 = new String("This is really not immutable!!");
String Str2 = Str1;
String Str3 = new String("This is really not immutable!!");
boolean retVal;
retVal = Str1.equals( Str2 );
System.out.println("Returned Value = " + retVal );
retVal = Str1.equals( Str3 );
System.out.println("Returned Value = " + retVal );
}
}
المخرجات :
Returned Value = true
Returned Value = true
Returned Value = true
الطريقة :endsWith
تختبر هذه الطريقة إذا كانت هذه السلسلة تنتهي باللاحقة المحددة مثال للتوضيح
- الكود:
public class Test {
public static void main(String args[]) {
String Str = new String("This is really not immutable!!");
boolean retVal;
retVal = Str.endsWith( "immutable!!" );
System.out.println("Returned Value = " + retVal );
retVal = Str.endsWith( "immu" );
System.out.println("Returned Value = " + retVal );
}
}
المخرجات :
Returned Value = true
Returned Value = false
Returned Value = false
الطريقة :replace
تُرجع هذه الطريقة سلسلة جديدة تنتج عن استبدال احرف قديمة باحرف جديدة على النحو التالى :
- الكود:
import java.io.*;
public class Test {
public static void main(String args[]) {
String Str = new String("Welcome to egy-tech.forumegypt.ne");
System.out.print("Return Value :" );
System.out.println(Str.replace('o', 'T'));
System.out.print("Return Value :" );
System.out.println(Str.replace('l', 'D'));
}
}
المخرجات :
Return Value :WelcTme tT egy-tech.fTrumegypt.
Return Value :WeDcome to egy-tech.forumegypt
Return Value :WeDcome to egy-tech.forumegypt
الطريقة :replaceAll
يستبدل هذا الأسلوب كل سلسلة فرعية من هذه السلسلة التي تطابق التعبير المعتاد المحدد مع الاستبدال المحدد....ويتم بناء الجملة على النحو التالى :
- الكود:
public String replaceAll(String regex, String replacement)
حيث أن :
regex - التعبير المعتاد الذي ستتم مطابقة هذه السلسلة معه.
replacement - السلسلة التي ستحل محل التعبير الموجود.
مثال :
- الكود:
import java.io.*;
public class Test {
public static void main(String args[]) {
String Str = new String("Welcome to Tutorialspoint.com");
System.out.print("Return Value :" );
System.out.println(Str.replaceAll("(.*)Tutorials(.*)", "AMROOD"));
}
}
و لنا بقية مع تكلمة المقال
ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم
رد: [Java] التعامل مع الفئة Strings Class
شكراشكرا استاذ احمد وكل التوفيق لكم يارب
abushuber- ....
- تاريخ التسجيل : 29/09/2018
المساهمات : 57
النقاط : 81
التقيم : 0
الدولة :
الجنس :
| |
منتدى مصر التقني :: قسم لغات البرمجة Programming languages :: لغة الجافا Java :: أساسيات اللغة Java Basics
صفحة 1 من اصل 1
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى
» معدات التعدين المفتوحة ، أنظمة الحزام الناقل وحلول مناولة المواد السائبة
» نماذج الاعمال business model والعروض الاستثمارية PitchDeck
» طرق تكبير الثدي للعزباء
» "أحلامنا المرآة: فك رموزها واستكشاف عمق المعاني"
» "لحام خزانات الفايبر بجودة عالية: توفير حلول دائمة وموثوقة للتخزين"
» "خدمات مكافحة النحل والدبابير: التعامل مع الحشرات القاحلة بأمان وفعالية"
» "خدمات تنظيف الفلل والمنازل الكبيرة في السعودية: الراحة والفخامة في بيئة نظيفة"
» مستقبل التكنولوجيا
» ATM Management System Project in Java