مقدمة للـ String

أولاً: تعريف الـ String:

الـ String في لغة جافا ومعظم لغات البرمجة هو سلسلة من الأحرف، أو مصفوفة من الـ char.

مثال: عندما تقوم بإنشاء متغير نوعه String فإنك تقوم بكتابة قيمة نصية بين علامتي تنصيص " " بالشكل التالي:

String myName = "abdulaziz";

 

كل حرف في الإسم abdulaziz هو عبارة عن char

الـ a عبارة عن char، والـ b عبارة عن char وهكذا لبقية الأحرف

لذلك فالـ String هو عبارة عن مصفوفة من الـ char تجتمع لتكوين هذا الـ String.

وكما هو الحال مع بقية المصفوفات فإن كل مصفوفة لها طول محدد.

طول المصفوفة يتم تحديده بعدد عناصرها، ويمكن معرفة عدد عناصر المصفوفة بإستخدام الدالة ()length بالشكل التالي:

String myName = "abdulaziz";
System.out.println(myName.length());

ستكون نتيجة هذا البرنامج طباعة الرقم 9 لأن عدد الأحرف في abdulaziz هي 9

 

كذلك فإن كل عنصر في المصفوفة له index أو مفهرس خاص به

فالحرف a بداية الإسم له الـ index رقم صفر

والحرف b له الـ index رقم 1

وهكذا لبقية الأحرف لها index خاص بها يرتبها من الـ 0 تصاعدياً حتى آخر حرف.

ويمكن طباعة حرف معين بإستخدام الـ index الخاص به بإستخدام الدالة ()charAt كما يلي:

		String myName = "abdulaziz";
		System.out.println(myName.charAt(3));

نتيجة هذا البرنامج ستكون طباعة الحرف u لأنه في الـ index رقم 3.

 

ثانياً: كلاس String

على خلاف العديد من لغات البرمجة، فالـ String في لغة جافا ليس مجرد مصفوفة من الأحرف، بل عبارة عن كائن object له كلاس خاص به إسمه String

هذا الكلاس يحتوي العديد من الدوال المعرفة التي تساعدك على التعامل مع النصوص بطرق مختلفة.

على سبيل المثال فإن المثال السابق لتعريف المتغير myName يمكن كتابته بطريقة مشابهه لإنشاء الكائنات بإستخدام كلمة new بالشكل التالي:

String myName = new String("abdulaziz");

 

بهذه الطريقة نحن نمرر الإسم "abdulaziz" كـ argument كي يتم إستخدامه لإنشاء الكائن الجديد.

 

ثالثاً: كونستركتور الـ String

الكلاس String يحتوي على أكثر من كونستركتور multiple constructors يستقبل قيم مختلفة، أحد الـ constructor يستقبل قيمة نوعها مصفوفة من الـ char بالشكل التالي:

String(char [] value)

 

هذا الكونستركتور يسمح لنا بإنشاء كائن نوعه String وإسناد قيمة مصفوفة من الـ char له.

مثلاً لو كان لدينا مصفوفة الـ char التالية:

		char [] myChar = {'a','b','d','u','l','a','z','i','z'};

 

فإنه يمكننا الإستفادة من وجود الكونستركتور السابق ذكره كي نقوم بإسناد قيمة هذه المصفوفة مباشرة لأحد الكائنات من نوع String بالشكل التالي:

 

        char [] myChar = {'a','b','d','u','l','a','z','i','z'};
		String myName = new String(myChar);

 

الآن نستطيع طباعة المتغير myName بإضافة جملة الطباعة للبرنامج:

 

		char [] myChar = {'a','b','d','u','l','a','z','i','z'};
		String myName = new String(myChar);
		System.out.println(myName);

 

وستكون النتيجة بالشكل التالي:

abdulaziz

 

التعليقات (0)

لايوجد لديك حساب في عالم البرمجة؟

تحب تنضم لعالم البرمجة؟ وتنشئ عالمك الخاص، تنشر المقالات، الدورات، تشارك المبرمجين وتساعد الآخرين، اشترك الآن بخطوات يسيرة !