صفيف شار في جافا | مصفوفة أحرف جافا
نشرت: 2020-12-01جدول المحتويات
مقدمة
تحتوي معظم البيانات التي نعالجها اليوم على أحرف بداخلها ، وسوف يقال أن لغة البرمجة مرنة إذا كانت مألوفة للمبرمج وتوفر طريقة للتعامل مع بيانات الشخصية.
تعتبر مصفوفات Char في java مفيدة جدًا وسهلة الاستخدام ، والسلاسل غير قابلة للتغيير في Java ولكن يمكننا معالجة الإدخالات في مصفوفة char. تعد مصفوفات Char أسرع عند مقارنتها بالقوائم والمجموعات وحتى بسيطة من المجموعات والقوائم.
دعنا نستكشف عمل صفيفات char الآن!
الإعلان والتهيئة
إعلان مصفوفة أحرف مشابه لإعلان مصفوفة عادية في جافا. "char [] array_name" أو "char array_name []" هي التركيبات التي يجب اتباعها للإعلان.
بعد الإعلان ، الشيء التالي الذي يتعين علينا القيام به هو التهيئة. “array_name = new char [array_length]” هي الصيغة التي يجب اتباعها. على أي حال ، يمكننا القيام بالإعلان والتهيئة في صيغة واحدة باستخدام صيغة “char array_name [] = new char [array_length]”. يجب الإعلان عن طول المصفوفة في وقت التهيئة في مصفوفة char.
اختبار الفصل العام { الرئيسية العامة الثابتة الفراغ ( سلاسل سلسلة []) { // إعلان -1 شار ار [] ؛ arr = new char [ 4 ] ؛ // إعلان -2 char arr2 [] = new char [ 4 ] ؛ // إسناد -1 char arr1 [] = new char [] { ' a ' ، ' b ' ، ' c ' ، ' d ' }؛ // إسناد -2 arr [ 0 ] = ' a ' ؛ arr [ 1 ] = ' b ' ؛ arr [ 2 ] = ' c ' ؛ arr [ 3 ] = ' d ' ؛ النظام . خارج . println (آر) ؛ النظام . خارج . println (arr1) ؛ } } |
في المقتطف أعلاه ، يعتبر كل من الإعلان -1 والإعلان -2 طريقتين للإعلان والتهيئة. والتعيين - 1 والتعيين - 2 هما طريقتان لدفع الإدخالات إلى المصفوفة. تذكر أنه عندما نطبع مصفوفة أحرف فإنها تطبع جميع الأحرف المدمجة كسلسلة ، في الحالة أعلاه سيكون الإخراج "abcd".

تعرف على المزيد: معالجة الأحداث في Java: ما هذا وكيف يعمل؟
التكرار على مصفوفة char
التكرار الحلقي على مصفوفة char هي مهمة ممتعة في جافا ، يمكننا استخدام حلقة "for loop" العادية أو حلقة "for: each" للتكرار على المصفوفة.
// حلقة -1 لـ ( int i = 0 ؛ i < arr . length ؛ i ++ ) النظام . خارج . طباعة (arr [i]) ؛ // حلقة -2 لـ ( شار ج : آر) النظام . خارج . طباعة (ج) ؛ |
في المقتطف أعلاه ، الحلقة 1 هي حلقة for العادية والمخرج النهائي للحلقة الأولى سيكون “abcd”. والحلقة 2 هي لـ: كل حلقة والمخرج النهائي للحلقة 2 سيكون “abcd”.
يمكن الوصول إلى طول صفيف الأحرف باستخدام سمة الطول. “Array_name.length” هو بناء الجملة الذي يجب اتباعه.
مجموعة char [] = new char [] { ' h ' ، ' e ' ، ' l ' ، ' l ' ، ' o ' }؛ النظام . خارج . println (مجموعة . طول) ؛ |
يطبع المقتطف أعلاه 5 ، كما هو متوقع.
قم بالتسجيل في دورات هندسة البرمجيات من أفضل الجامعات في العالم. اربح برامج PG التنفيذية أو برامج الشهادات المتقدمة أو برامج الماجستير لتتبع حياتك المهنية بشكل سريع.
فرز صفيف شار
يمكن فرز المصفوفات في جافا باستخدام "Arrays.sort (array_name)". سيؤدي هذا إلى فرز مجموعة الأحرف التي تم تمريرها بشكل معجمي.

char [] array = { ' h ' ، ' e ' ، ' l ' ، ' l ' ، ' o ' }؛ المصفوفات . فرز (مجموعة) ؛ النظام . خارج . println ( Arrays . toString (مجموعة)) ؛ //خط 1 النظام . خارج . println (مجموعة) ؛ //خط 2 |
لاحظ أننا بحاجة إلى استيراد java.util.Arrays من أجل الحصول على Arrays.sort () و Arrays.toString ().
في المقتطف أعلاه ، يتم فرز مصفوفة char بطريقة معجمية وطباعة المصفوفة تطبع الأحرف المدمجة كسلسلة. سيكون ناتج "line2" هو "ehllo" إذا لم تقم بذلك كسلسلة مدمجة بدلاً من ذلك تريد طباعة المصفوفة بأكملها بأقواس مربعة في نهايتها ، ثم يقوم Arrays.toString () بالمهمة. سيكون ناتج "line1" هو [e ، h ، l ، l ، o].
في مقتطفات التعليمات البرمجية السابقة ، أعلنا عن مصفوفات char عن طريق ملء المدخلات في المصفوفة ، ولكن ماذا لو أردنا تحويل سلسلة إلى مصفوفة char؟
على أي حال ، نقوم بتهيئة مصفوفة char بطول السلسلة ، والتكرار الحلقي على السلسلة ، وإلحاق كل حرف بالمصفوفة سوف يقوم بالمهمة.
String s = " hello " ؛ char [] arr = جديد char [s . الطول()]؛ لـ ( int i = 0 ؛ i < s . length () ؛ i ++ ) arr [i] = s . charAt (i) ؛ النظام . خارج . println ( Arrays . toString (arr)) ؛ |
المقتطف أعلاه سيطبع [h ، e ، l ، l ، o] كما هو متوقع.
سيفعل المقتطف أعلاه فن تحويل سلسلة إلى مصفوفة char ، لكن هل نحتاج إلى كتابة هذا الرمز الطويل في كل مرة نريد تحويل سلسلة إلى مصفوفة char ؟. حسنًا ، سيكون الجواب لا.
توفر Java طريقة جميلة تسمى toCharArray () والتي يجب تطبيقها على سلسلة وتعيد مصفوفة char.
String s = " aejou " ؛ شار [] arr = s . toCharArray () ، النظام . خارج . println ( Arrays . toString (arr)) ؛ //خط 1 arr [ 2 ] = ' i ' ؛ النظام . خارج . println ( Arrays . toString (arr)) ؛ //خط 2 |
كما هو متوقع ، يقوم "الخط 1" بطباعة [a ، e ، j ، o ، u] كإخراج. وكما ناقشنا سابقًا ، على عكس السلسلة النصية ، يمكننا تحرير أو معالجة مدخلات مصفوفة char. إذن ناتج السطر 2 سيكون [a ، e ، i ، o ، u].
الآن بعد أن رأينا طريقة لتحويل سلسلة نصية إلى مصفوفة char في جافا ، ماذا لو أردنا مهمة العكس بالعكس؟
ناهيك عن أن جافا لديها أيضًا طريقة للقيام بمثل هذه المهام.

char [] arr = { ' h ' ، ' e ' ، ' y ' ، ' ' ، ' t ' ، ' h ' ، ' e ' ، ' r ' ، ' e ' }؛ String s1 = سلسلة جديدة (arr) ؛ //طريقة 1 النظام . خارج . println (s1) ؛ السلسلة s2 = String . valueOf (arr) ؛ // طريقة 2 النظام . خارج . println (s2) ؛ |
في المقتطف أعلاه ، يمكننا أن نرى كلتا الطريقتين لتحويل مصفوفة char إلى سلسلة. سيكون ناتج المقتطف أعلاه "مرحبًا" ، كما هو متوقع.
اقرأ أيضًا: 17 من الأفكار والموضوعات الخاصة بمشروع Java مثيرة للاهتمام للمبتدئين
خاتمة
تعرفنا على مصفوفات char ، وتعلمنا طرقًا مختلفة لتهيئة مصفوفات char وإعلانها. مشيت من خلال مقتطف للتكرار الحلقي على مصفوفة char. فرز مصفوفة char باستخدام طريقة Arrays.sort () المعرفة مسبقًا.
ولاحظوا تنفيذًا ساذجًا ومُعرّفًا مسبقًا لسلسلة لتحويل مصفوفة char ، كما لوحظ تنفيذًا بالعكس بالعكس باستخدام طرق مختلفة. الآن بعد أن أصبحت ضليعًا بمفاهيم مصفوفات شار ، ابدأ في تنفيذها!
إذا كنت مهتمًا بمعرفة المزيد حول Java و OOPs وتطوير البرامج الكاملة ، تحقق من upGrad & IIIT-B's Executive PG Program in Full-stack Software Development المصمم للمهنيين العاملين ويقدم أكثر من 500 ساعة من التدريب الصارم ، أكثر من 9 مشاريع ، ومهام ، وحالة خريجي IIIT-B ، ومشاريع التخرج العملية العملية والمساعدة في العمل مع الشركات الكبرى.
