karem Admin
عدد الرسائل : 629 رقم العضوية : 1 تاريخ التسجيل : 23/11/2007
بطاقة الشخصية الاسم/: تاريخ الميلاد: الدولة: جمهورية مصر العربية
| | لمصفوفات Arrays فى لغة الجافا | |
تكلمنا في الدرس السابق عن المتغيرات و في هذا الدرس سنتكلم عن المصفوفات arrays . المصفوفة هي وعاء او حاوية تحمل عدد محدد من القيم values لمتغيرات variables من نفس النوع type.طول المصفوفة( أو الحاوية) أي عدد القيم التي تحملها يتحدد عندتخليق المصفوفة كما سنرى. بعد تخليق المصفوصة فإن طولها يظل ثابتا، أي لايمكن أن تحمل عناصر أكثر.
كل عنصر في الarray يسمى element وكل عنصر يمكن الوصول له في المصفوصة عن طريق فهرس رقمي يسمى index. كما في الصورة التالية.
ترقيم الفهرس يبدأ من العدد صفر. لذا فإن العنصر التاسع رقمه الفهرسي هو 8 . فمثلا فأنت ترى في بعض العمارات صناديق بريد وكل صندوق عليه رقم يعبر عن رقم شقة (عنصر) . نفس الكلام ينطبق على المصفوفة في الجافا و لكن الترقيم يبدأ من الرقم صفر كما قلنا. إستخدامات المصفوفات كثيرة فمثلا من الممكن أن نعرف مصفوفة تحتوي على أسماء لاعبي الفريق في النادي. إقرأ معي قوله تعالى: "زُيِّنَ لِلنَّاسِ حُبُّ الشَّهَوَاتِ مِنَ النِّسَاء وَالْبَنِينَ وَالْقَنَاطِيرِ الْمُقَنطَرَةِ مِنَ الذَّهَبِ وَالْفِضَّةِ وَالْخَيْلِ الْمُسَوَّمَةِ وَالأَنْعَامِ وَالْحَرْثِ ذَلِكَ مَتَاعُ الْحَيَاةِ الدُّنْيَا وَاللّهُ عِندَهُ حُسْنُ الْمَآبِ{14} قُلْ أَؤُنَبِّئُكُم بِخَيْرٍ مِّن ذَلِكُمْ لِلَّذِينَ اتَّقَوْا عِندَ رَبِّهِمْ جَنَّاتٌ تَجْرِي مِن تَحْتِهَا الأَنْهَارُ خَالِدِينَ فِيهَا وَأَزْوَاجٌ مُّطَهَّرَةٌ وَرِضْوَانٌ مِّنَ اللّهِ وَاللّهُ بَصِيرٌ بِالْعِبَادِ{15} الَّذِينَ يَقُولُونَ رَبَّنَا إِنَّنَا آمَنَّا فَاغْفِرْ لَنَا ذُنُوبَنَا وَقِنَا عَذَابَ النَّارِ{16} الصَّابِرِينَ وَالصَّادِقِينَ وَالْقَانِتِينَ وَالْمُنفِقِينَ وَالْمُسْتَغْفِرِينَ بِالأَسْحَارِ"لتعريف مصفوصة تحتوي علي صفات المتقين فلنقرأ الكود التالي.. :String [] godlyPeopleArray; godlyPeopleArray = new String[5]; godlyPeopleArray[0] = "الصَّابِرِينَ"; godlyPeopleArray[1] = "الصَّادِقِين"; godlyPeopleArray[2] = "الْقَانِتِينَ"; godlyPeopleArray[3] = "الْمُنفِقِينَ"; godlyPeopleArray[4] = "الْمُسْتَغْفِرِينَ بِالأَسْحَارِ";
System.out.println("صفة المتقي عند الفهرس رقم 0 :" + godlyPeopleArray [0]); System.out.println("صفة المتقي عند الفهرس رقم 1 :" + godlyPeopleArray [1]); System.out.println("صفة المتقي عند الفهرس رقم 2 :" + godlyPeopleArray [2]); System.out.println("صفة المتقي عند الفهرس رقم 3 :" + godlyPeopleArray [3]); System.out.println("صفة المتقي عند الفهرس رقم 4 :" + godlyPeopleArray [4]); ...في الكود السابق عرفنا المصفوفة godlyPeopleArray من النوع String و تحمل خمس عناصر . ثم ملأنا كل عنصر في المصفوفة ب String . بعد ذلك طبعنا هذه العناصر على الشاشة بإستخدام الأمر System.out.println . بالطبع عند كتابة برنامج سنستخدم أوامر التكرار مثل ال for loop وذلك لتسهيل الكتابة كما سنرى في درس قادم بإذن الله. لتعريف مصفوفة نكتب نوع المصفوفة ثم نكتب قوسان مربعان [] ثم نتبعهم بإسم المصفوفة....String [] godlyPeopleArray; int [] IntegersArray; byte [] bytesArray; char [] charactersArray; boolean [] booleans; .لتخليق المصفوفة نستخدم الأمر new ثم نتبعه بنوع المصفوفة ثم قوسان مربعان [] وبينهما طول المصفوفة . godlyPeopleArray = new String[5];
لملأ المصفوفة أتظر للكود التالي godlyPeopleArray = new String[5]; godlyPeopleArray[0] = "الصَّابِرِينَ"; godlyPeopleArray[1] = "الصَّادِقِين"; godlyPeopleArray[2] = "الْقَانِتِينَ"; godlyPeopleArray[3] = "الْمُنفِقِينَ"; godlyPeopleArray[4] = "الْمُسْتَغْفِرِينَ بِالأَسْحَارِ";
integersArray[0] = 2; integersArray[1] = 100; integersArray[2] = 200; كل عنصر في المصفوفة نصل له بفهرسه الرقمي كما في الأمر:
System.out.println("صفة المتقي عند الفهرس رقم 0 :" + godlyPeopleArray [0]);
من الممكن تعريف وتخليق وملأ المصفوفات بطريقة قصيرة كالآتي int[] anArray = {100, 200, 300, 400, 500, 600, 700, 800, 900, 1000}; طول المصفوفة في المثال السابق هو عدد العناصر بين القوسين { و } من الممكن أيضا أن نعرف مصفوفة متعددة الأبعاد multidimensional array أي مصفوفة تحتوي على مصفوفة أو أكثر. تعريف المصفوفة متعددة الأبعاد يكون بنفس طريقة تعريف المصفوفة أحادية البعد ولكن نضع عدد من مجموعات الأقواس المربعة يساوي عدد أبعاد المصفوفة. مثال على ذلك تخيل إننا نريد تعريف نتيجة بعدد أيام الأسبوع وتحتوي على الأنشطة التي نقوم بها كل يوم و بحد أقصى عشرة أنشطة. String [][]calendar ; calendar = new String [7][10]; calendar[0][0] = "حفظ قرآن"; calendar[0][1] = "درس جافا"; calendar[0][2] = "لقاء مع الأصدقاء"; . . . calendar[4][0] = "لعب كرة"; calendar[4][1] = "زيارات عائلية"; .في المثال السابق فإننا عرفنا المصفوفة calendar والتي تحتوي على بعد يمثل أيام الأسبوع وطوله 7 و تحتوي على بعد ثاني يمثل الأنشطة التي سنقوم بها في هذا اليوم وطوله عشرة. لمعرفة طول المصفوفة نستخدم ت صفة property إسمها length مثال: كود بلغة HTML:calendar.length
. | |
|