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

المصفوفات فى الجافا Java Arrays

اذهب الى الأسفل

المصفوفات فى الجافا Java Arrays Empty المصفوفات فى الجافا Java Arrays

مُساهمة من طرف زهراء في الإثنين يناير 21, 2019 8:47 pm

أهلا بكم

من خلال هذا المقال سنتناول بالشرح مفهوم المصفوفات فى الجافا #Java Array، المقال سوف يغطي المواضيع التالية:



  1. ما هي المصفوفات  Arrays؟

  2. طرق إنشاء مصفوفة 

  3. الوصول إلى عنصر محدد في المصفوفات

  4. المصفوفات متعددة الأبعاد 

  5. تمرير بيانات مصفوفة إلى طريقة Method




ما هي المصفوفات  Arrays؟

المصفوفات في #Java هي هياكل بيانات متجانسة يتم تنفيذها في #Java ككائنات.حيث تقوم #Arrays بتخزين قيمة واحدة أو أكثر من نوع بيانات محدد بطريقة مفهرسة و يتم الوصول إلى عنصر محدد في المصفوفة بواسطة الفهرس الخاص به. 

طرق إنشاء المصفوفات :

الصيغة العامة للإعلان عن المصفوفة على النحو التالى :

المصفوفة ذات البعد الواحد....والصيغة العامة للإعلان عن المصفوفة ذات البعد الواحد كالتالي:

المصفوفات فى الجافا Java Arrays 781125485


أو يمكن الإعلان عنها بنفس الصيغة السابقة مع وضع الأقواس بعد اسم المصفوفة كالتالي:

المصفوفات فى الجافا Java Arrays 756900150


اذن لكي يتم إنشاء مصفوفة يجب عليك الاتى :


  • تحديد نوع البيانات المراد تخزينها فى المصفوفة data type
  • قوس مربع []
  • وضع اسم للمصفوفة 


مثال : انشاء مصفوفة باسم A تحتوي على بيانات من نوع int 

الكود:
int [] A;

أو يمكنك تبديل موضع [] مع اسم المصفوفة على النحو التالى :

الكود:
int A [] ;

بهذا كما موضح هو إعلاه قنما بإنشاء المصفوفة A ولكن لا يمكن تخزين بيانات بها بعد، بمعنى أنه تم إنشاء اسم متغير يشير إلى #null (لا شيء) في الذاكرة لذلك يجب علينا تهئية تلك المصفوفة وذلك بتحديد حجمها ويتم ذلك بعده طرق :

باستخدام الكلمة الاساسية #new ، وتعيينه إلى نوع بيانات المصفوفة على النحو التالى :

الكود:

int [] A;
A[] = new int[5];

أو يمكن تهئية المصفوفة و تحديد حجمها في سطر واحد كالتالي:

المصفوفات فى الجافا Java Arrays 129786133

الوصول إلى عنصر محدد في المصفوفات :


وكما هو ظاهر اعلاه كل المصفوفات عناصرها مرقمة من 0 إلى (حجم المصفوفة -1) ويسمى هذا الترقيم بال #index فهو بمثابة عنوان للعنصر وبه نستطيع الوصول إليه.

مثلا المصفوفة A التى تم إنشائها وتحديد حجمها 5 لتخزين خمس أرقام فسيكون ال #index  لها من 0 إلى 4، إذ أن العنصر الأول سيكون متواجد عند ال#index رقم 0 والعنصر الثاني عند ال#index رقم 1، وهكذا إلى نهاية المصفوفة....فمثلا لو أردنا وضع القيمة 10 في المخزن الاول للمصفوفة سنقوم بكتابة الشفرة على النحو التالى :

الكود:
;A[0]=10

مثال اكثر توضيحا :

إنشاء مصفوفة باسم #month_days حجمها يتسع لعدد 12 مخزن ليتم تخزين عدد الايام لكل شهر ميلادى ..ثم طباعة عدد ايام شهر ابريل على النحو التالى :

الكود:
public static void main(String args[]) {
   int month_days[];
    month_days = new int[12];
    month_days[0] = 31;
    month_days[1] = 28;
    month_days[2] = 31;
    month_days[3] = 30;
    month_days[4] = 31;
    month_days[5] = 30;
    month_days[6] = 31;
    month_days[8] = 30;
    month_days[9] = 31;
    month_days[10] = 30;
    month_days[11] = 31;
     System.out.println("April has " + month_days[3] + " days.");
     }
}

المخرجات :

April has 30 days

و على الرغم من ذلك يمكنك يمكن تهيئة المصفوفة و تحديد حجمها عندما يتم الإعلان عنها مباشرة بتمرير القيم او العناصر المراد تخزينها بها في مُهيئ المصفوفة .حيث سيتم إنشاء المصفوفة تلقائيًا بشكل يكفي لاحتواء عدد العناصر التي تحددها في مُهيئ الصفيف. على النحو التالى :

المصفوفات فى الجافا Java Arrays 151613972

مثال :
الكود:
class MyArray{
 
public static voide main(String args[]){
 
int month_days[ ] = {31,28,31,30,31,30,31,30,31,30,31};
 
System.out.println("April has " + month+days[3] + "days.");
 
}
 
}


المخرجات :

April has 30 days


 المصفوفة متعددة الأبعاد (ذات البعدين) Multidimensional array

ويمكن القول بأن المصفوفة ذات البعدين هي عبارة عن جدول يحتوي على صفوف وأعمدة .والصيغة العامة لهذه المصفوفة كالتالي :


المصفوفات فى الجافا Java Arrays 145876847

ويتعب نفس طريقة انشاء و تهيئة المصفوفة أحادية البعد

المصفوفات فى الجافا Java Arrays 422583293

تمرير مصفوفة إلى طريقة

يمكننا أيضًا تمرير المصفوفات إلى الطرق كما يمكننا تمرير قيم النوع البدائي إلى الأساليب...على النحو التالى :

الكود:
public class PMethods{
public static void display(int y[])
     {
             System.out.println(y[0]);
             System.out.println(y[1]);
             System.out.println(y[2]);
 
     }
public static void main(String args[])
     {
     int x[] = { 1, 2, 3 };
     display(x);
     }
}
زهراء
زهراء
........
........

تاريخ التسجيل : 18/02/2011
المساهمات : 433
النقاط : 752
التقيم : 63
الدولة : مصر
الجنس : انثى

الرجوع الى أعلى الصفحة اذهب الى الأسفل

الرجوع الى أعلى الصفحة

ََ

مواضيع ذات صلة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى