جافا المصفوفات
جافا المصفوفات
تُستخدم المصفوفات لتخزين قيم متعددة في متغير واحد ، بدلاً من الإعلان عن متغيرات منفصلة لكل قيمة.
للإعلان عن مصفوفة ، حدد نوع المتغير بأقواس مربعة :
String[] cars;
لقد أعلنا الآن عن متغير يحتوي على مصفوفة من السلاسل النصية. لإدخال القيم إليها ، يمكننا استخدام مصفوفة حرفية - ضع القيم في قائمة مفصولة بفواصل ، داخل أقواس معقوفة:
String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
لإنشاء مصفوفة أعداد صحيحة ، يمكنك كتابة:
int[] myNum = {10, 20, 30, 40};
الوصول إلى عناصر المصفوفة
يمكنك الوصول إلى عنصر مصفوفة بالإشارة إلى رقم الفهرس.
يصل هذا البيان إلى قيمة العنصر الأول في السيارات:
مثال
String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
System.out.println(cars[0]);
// Outputs Volvo
ملاحظة: تبدأ فهارس المصفوفة بالرقم 0: [0] هو العنصر الأول. [1] هو العنصر الثاني ، إلخ.
تغيير عنصر صفيف
لتغيير قيمة عنصر معين ، راجع رقم الفهرس:
مثال
cars[0] = "Opel";
مثال
String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
cars[0] = "Opel";
System.out.println(cars[0]);
// Now outputs Opel instead of Volvo
طول الصفيف
لمعرفة عدد عناصر المصفوفة ، استخدم length
الخاصية:
مثال
String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
System.out.println(cars.length);
// Outputs 4
حلقة من خلال مصفوفة
يمكنك المرور عبر عناصر المصفوفة باستخدام for
الحلقة ، واستخدام length
الخاصية لتحديد عدد مرات تشغيل الحلقة.
يُخرج المثال التالي جميع العناصر في مصفوفة السيارات :
مثال
String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
for (int i = 0; i < cars.length; i++) {
System.out.println(cars[i]);
}
حلقة من خلال مصفوفة مع For-each
هناك أيضًا حلقة " for-each " ، والتي تُستخدم حصريًا لإجراء تكرار خلال العناصر في المصفوفات:
بناء الجملة
for (type variable : arrayname) {
...
}
يُخرج المثال التالي جميع العناصر في مصفوفة السيارات ، باستخدام حلقة " for-each ":
مثال
String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
for (String i : cars) {
System.out.println(i);
}
يمكن قراءة المثال أعلاه على النحو التالي: لكل String
عنصر (يسمى
i - كما في
i ndex) في السيارات ، اطبع قيمة i .
إذا قارنت for
الحلقة مع كل حلقة ، فسترى أن طريقة for-each أسهل في الكتابة ، ولا تتطلب عدادًا (باستخدام خاصية length) ، وهي أكثر قابلية للقراءة.
المصفوفات متعددة الأبعاد
المصفوفة متعددة الأبعاد هي مجموعة من المصفوفات.
لإنشاء مصفوفة ثنائية الأبعاد ، أضف كل مصفوفة ضمن مجموعتها الخاصة من الأقواس المتعرجة :
مثال
int[][] myNumbers = { {1, 2, 3, 4}, {5, 6, 7} };
أصبحت myNumbers الآن مصفوفة مكونة من مصفوفتين كعناصرها.
للوصول إلى عناصر مصفوفة myNumbers ، حدد فهرسين: أحدهما للصفيف والآخر للعنصر داخل تلك المصفوفة. يصل هذا المثال إلى العنصر الثالث (2) في المصفوفة الثانية (1) من myNumbers:
مثال
int[][] myNumbers = { {1, 2, 3, 4}, {5, 6, 7} };
int x = myNumbers[1][2];
System.out.println(x); // Outputs 7
يمكننا أيضًا استخدام عنصر for loop
داخلي آخر for loop
للحصول على عناصر مصفوفة ثنائية الأبعاد (لا يزال يتعين علينا الإشارة إلى الفهرين):
مثال
public class Main {
public static void main(String[] args) {
int[][] myNumbers = { {1, 2, 3, 4}, {5, 6, 7} };
for (int i = 0; i < myNumbers.length; ++i) {
for(int j = 0; j < myNumbers[i].length; ++j) {
System.out.println(myNumbers[i][j]);
}
}
}
}