المصفوفات (Arrays) في لغة C# هي هياكل بيانات قوية تُستخدم لتخزين مجموعة من العناصر من نفس النوع. تُعتبر المصفوفات أساسية في برمجة C# وتُستخدم في مجموعة واسعة من التطبيقات. إليك شرح مُفصّل لخاصية المصفوفات في C#:
ما هي المصفوفة؟
المصفوفة هي مجموعة مُرتّبة من العناصر من نفس النوع (مثلًا، مجموعة من الأعداد الصحيحة، أو مجموعة من النصوص). كل عنصر في المصفوفة له فهرس (index) يُشير إلى موقعه داخل المصفوفة. يبدأ الفهرس في C# من الصفر.
كيفية تعريف مصفوفة في C#:
يتم تعريف المصفوفة في C# باستخدام الصيغة التالية:
C#
نوع_البيانات[] اسم_المصفوفة = new نوع_البيانات[حجم_المصفوفة];
نوع_البيانات
: يُحدد نوع البيانات التي ستُخزن في المصفوفة (مثلint
للأعداد الصحيحة،string
للنصوص،float
للأعداد العشرية).اسم_المصفوفة
: هو الاسم الذي تختاره للمصفوفة.حجم_المصفوفة
: هو عدد العناصر التي ستُخزن في المصفوفة.
أمثلة على تعريف المصفوفات:
- مصفوفة من 5 أعداد صحيحة:
C#
int[] numbers = new int[5];
- مصفوفة من 10 نصوص:
C#
string[] names = new string[10];
الوصول إلى عناصر المصفوفة:
يتم الوصول إلى عناصر المصفوفة باستخدام الفهرس الخاص بها داخل أقواس مربعة []
. تذكر أن الفهرس يبدأ من الصفر.
C#
int[] numbers = new int[5];numbers[0] = 10; // تعيين القيمة 10 للعنصر الأول في المصفوفةnumbers[1] = 20; // تعيين القيمة 20 للعنصر الثاني في المصفوفةint x = numbers[2]; // قراءة قيمة العنصر الثالث في المصفوفة وتخزينها في المتغير x
تهيئة المصفوفة عند تعريفها:
يُمكن تهيئة المصفوفة بقيم ابتدائية عند تعريفها باستخدام الصيغة التالية:
C#
نوع_البيانات[] اسم_المصفوفة = { قيمة1, قيمة2, قيمة3, ... };
مثال:
C#
int[] numbers = { 1, 2, 3, 4, 5 }; // مصفوفة تحتوي على القيم 1، 2، 3، 4، 5string[] names = { "علي", "محمد", "فاطمة" }; // مصفوفة تحتوي على النصوص "علي"، "محمد"، "فاطمة"
خاصية Length
:
تُستخدم خاصية Length
للحصول على حجم المصفوفة (عدد العناصر فيها).
C#
int[] numbers = { 1, 2, 3, 4, 5 };int size = numbers.Length; // size سيحتوي على القيمة 5
أنواع المصفوفات:
- مصفوفات أحادية البعد (Single-Dimensional Arrays): هي المصفوفات التي تحتوي على صف واحد من العناصر. الأمثلة السابقة كلها أمثلة على مصفوفات أحادية البعد.
- مصفوفات متعددة الأبعاد (Multi-Dimensional Arrays): هي المصفوفات التي تحتوي على أكثر من بُعد (مثل المصفوفات ثنائية الأبعاد التي تُشبه الجداول).
مثال على مصفوفة ثنائية الأبعاد:
C#
int[,] matrix = new int[3, 4]; // مصفوفة ثنائية الأبعاد بحجم 3 صفوف و 4 أعمدةmatrix[0, 0] = 1; // تعيين القيمة 1 للعنصر في الصف الأول والعمود الأول
بعض النقاط الهامة حول المصفوفات في C#:
- حجم المصفوفة ثابت عند إنشائها، ولا يُمكن تغييره لاحقًا.
- يجب أن تكون جميع عناصر المصفوفة من نفس النوع.