سعيد عبيد
سعيد عبيد
سعيد عبيد
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.


منتدى تعليمي ثقافي اجتماعي
 
الرئيسيةبوابة سعيد*المنشوراتأحدث الصورالتسجيلدخول


 

 المصفوفات في لغة جافا | Arrays in Java

اذهب الى الأسفل 
كاتب الموضوعرسالة
الكنج
المدير العام
المدير العام
الكنج


علم بلدك : مصر
ذكر

المصفوفات في لغة جافا | Arrays in Java  Empty
مُساهمةموضوع: المصفوفات في لغة جافا | Arrays in Java    المصفوفات في لغة جافا | Arrays in Java  Emptyالسبت 18 نوفمبر 2017, 1:14 am

المصفوفات في لغة جافا | Arrays in Java


السلام عليكم ورحمة الله وبركاته ...

سأشرح اليوم المصفوفات في لغة جافا وسنتعرف عليها بالتفصيل بإذن الله



فهرس الموضوع :
اقتباس :

  • أولا : ما هي المصفوفات .
  • ثانيا : فهم مبدأ المصفوفات .
  • ثالثا : تعريف واستخدام المصفوفة برمجيا .
  • رابعا : جملة For Each .
  • خامسا : المصفوفات متعددة الأبعاد .
  • سادسا : مراجع مفيدة .



أولا : ما هي المصفوفات .
المصفوفة هي عبارة عن كائن يحتوي عدد من الكائنات من نوع واحد تخزنها في الذاكرة ، وتستطيع تشبيهها بمتغير بأكثر من قيمة .


ثانيا : فهم مبدأ المصفوفات .
بما أن المصفوفة هي عبارة عن كائن يحتوي أكثر من قيمة ، وجب توفير رقم يدل على القيمة المطلوبة عند تحديد هذه القيمة في الذاكرة أو عند استدعائها ، وبناءً على ذلك يوجد لكل قيمة رقم خاص يدل عليه ، حيث يبدأ الترقيم في المصفوفة من الرقم صفر (0) .
يمكنك أن تشبه المصفوفة بالجدول بهذا الشكل :
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
لاحظ أن الجدول اللذي رسمناه يبدأ الترقيم فيه من الرقم 0 وينتهي ب 4 بالتالي فسيتكون هذا الجدول من خمسة عناصر وكذلك بالنسبة للمصفوفات
ملاحظة : يوجد نوع اخر من المصفوفات سيتم توضيحه لاحقا وهو المصفوفات متعددة الابعاد لكن الآن سنركز على فهم المصفوفة العادية .


ثالثا : تعريف واستخدام المصفوفة برمجياَ .
أولا يجب ان تعرف أن المصفوفة يجب أن يكون لها نوع (Data type) وهذا النوع هو ما سيحدد نوع العناصر اللتي سيحتويها ، فكما ذكرنا سابقا المصفوفة هي كائن تحتوي عدد من الكائنات من نوع واحد ، ولذلك عند تعريف المصفوفة يتم تحديد ذلك النوع .
انظر إلى طريقة التعريف :
الكود:
int x[] ;
لاحظ أننا عندما نعرف متغير عادي نقوم بتحديد نوع المتغير ثم اسمه ، لكن انتبه إلى الأقواس المربعة ، هذه الأقواس هي اللتي تبين أن هذا الكائن هو مصفوفة وليس متغيرا عادياَ .
يوجد أكثر من طريقة للتعامل مع المصفوفة :

  • تحديد عدد عناصر المصفوفة :

ويتم بهذه الطريقة
الكود:
int x[] = new int[4];
كلمة new في الكود تدل على أننا ننشئ مساحة جديدة لقيم المصفوفة في الذاكرة وهي من نوع int بـ 4 قيم من نفس النوع .
ملاحظة : لا تقم بالخلط بين عدد عناصر المصفوفة وبين رقم اخر قيمة فيها فهذه المصفوفة في المثال السابق هي عبارة عن مصفوفة تتكون من أربعة عناصر بمعنى أن ترقيم عناصرها يبدأ بالرقم 0 وينتهي بالرقم 3 .
لتحديد قيم هذه العناصر الأربعة قم بتحديد الترقيم بداخل الأقواس مثال :
الكود:
x[0] = 46;
x[1] = 31;
x[2] = 70;
x[3] = 12;
هكذا يتم تحديد قيم عناصر المصفوفة واستدعاء أي عنصر يتطلب كتابة اسم المصفوفة مع وضع رقم العنصر بين الأقواس ، لتتأكد بنفسك قم بكتابة هذا الكود :
الكود:
System.out.println(x[2]);
سيكون ناتج الطباعة هو 70 .
يوجد طريقة أخرى لتحديد قيم المصفوفة أثناء التعريف كالتالي :
الكود:
int x[] = {46,31,70,12};
وسيكون الترتيب بنفس الطريقة السابقة بالتعداد من صفر إلى 3 لأننا وضعنا 4 عناصر .
يمكنك أيضا تعريف أكثر من مصفوفة في وقت واحد كما تفعل عند تعريف المتغيرات :
الكود:
int x[],y[] ;
لكن ربما سيزعجك كتابة الأقواس كثيرا لذلك يمكنك أن تستبدل الطريقة السابقة بهذه الطريقة وكلا الطريقتين صحيحتين وستؤديان نفس العمل :
الكود:
int [] x,y;
لكن ماذا لو كان لدي مصفوفة كبيرة جدا تحوي 100 عنصر مثلا كيف سأقوم بطباعتها ؟
جواب هذا السؤال في الجزء التالي من الموضوع [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة] .


رابعا : جملة For Each .
هي حالة خاصة من جملة for تستخدم للتعامل مع المصفوفات ، شاهد المثال الآتي وسيتم شرح كل كود بالتفصيل :
الكود:
int x[] = {24,52,76};

for(int val : x){

System.out.println(val);

}
لاحظ أننا عرفنا المصفوفة بشكل عادي بدون أي مشاكل ، لننتقل إلى جملة for ستجد أنها تختلف كثيرا عن جملة for اللتي نستخدمها في العادة في الخانة الأولى وضعنا كائن من نفس نوع المصفوفة وفي الخانة الثانية نضع اسم المصفوفة ، لكن لاحظ أننا فصلنا بينها بنقطتين رأسيتين ( : ) وليس بفاصلة منقوطة ( ; ) وهذه هي الصيغة لهذه الجملة .
حيث تكون الخانة الأولى عبارة عن كائن يحوي عنصر واحد من عناصر المصفوفة في كل مرة بالترتيب إبتداءا من العنصر رقم صفر ، لذلك تم طباعة محتويات المصفوفة عند وضع المتغير val بداخل جملة الطباعة (لا تنسى ان تكون قيمة val أو أيا يكن الاسم اللذي حددته له من نفس نوع عناصر المصفوفة) .
الخانة الثانية نضع المصفوفة التي نريد ادراج عناصرها في المتغير في الخانة الأولى .
نتيجة تنفيذ الأمر :
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
ملاحظة : يمكنك أيضا استخدام for بشكل عادي لاستدعاء عناصر المصفوفة لكن هذه الطريقة أسهل وأسرع .


خامسا : المصفوفات متعددة الأبعاد .
المصفوفات متعددة الأبعاد هي باختصار عبارة عن مصفوفة عناصرها عبارة عن عدد من المصفوفات وكلها من نفس النوع ، بمعنى أننا نستبدل كل عنصر بداخل المصفوفة الرئيسية بمصفوفة أخرى .
انظر إلى الكود لتفهم الموضوع أكثر :
الكود:
int [] [] x = { {4,3} , {7,11} } ;

System.out.println(x[0][1]);
System.out.println(x[1][1]);
System.out.println(x[0][0]);
System.out.println(x[1][0]);
لاحظ أننا استبدلنا كل عنصر من عناصر المصفوفة x بمصفوفة بالتالي اصبح لدينا مصفوفة بهذا الشكل :
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
وهكذا لاستدعاء أي عنصر نقوم بكتابة رقم عنصر المصفوفة x في المربع الأول وبالتالي نكون قد حددنا أي مصفوفة فرعية نقصد ثم في المربع الثاني نضع رقم العنصر في المصفوفة اللتي تم تحديدها في المربع اللذي قبله .
ولفهم الأمر بشكل كامل انظر إلى ناتج تنفيذ الكود في الأعلى :
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
الرجوع الى أعلى الصفحة اذهب الى الأسفل
https://saiedepied.yoo7.com
 
المصفوفات في لغة جافا | Arrays in Java
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
سعيد عبيد :: المرحلة الثانويه :: الصف الثانى الثانوى :: الترم الأول :: الرياضيات-
انتقل الى: