C# Fundamentals

إضافة قيم إلى مجموعات C#: المصفوفات والقوائم

Spread the love

تقدم لغة C# عدة طرق للعمل مع مجموعات البيانات. بينما توفر المصفوفات تخزينًا فعالًا لعدد ثابت من العناصر، فإن فئة List<T> توفر إعادة تغيير حجم ديناميكية ومرونة أكبر. إن فهم نقاط القوة والضعف لكل نهج أمر بالغ الأهمية لكتابة كود C# فعال وقابل للصيانة.

جدول المحتويات

العمل مع المصفوفات في C#

المصفوفات في C# هي بنى بيانات ذات حجم ثابت. بمجرد الإعلان عنها، لا يمكن تغيير حجمها. هذه الخاصية تجعلها فعالة من حيث الذاكرة عندما يكون عدد العناصر معروفًا مسبقًا. ومع ذلك، يمكنك ملء عناصر المصفوفة بعد الإعلان عنها.

فيما يلي كيفية إضافة قيم إلى مصفوفة باستخدام حلقة for:


// إعلان مصفوفة عدد صحيح من الحجم 5
int[] numbers = new int[5];

// إضافة قيم باستخدام حلقة for
for (int i = 0; i < numbers.Length; i++)
{
  numbers[i] = i * 10; // تعيين القيم: 0، 10، 20، 30، 40
}

// طباعة عناصر المصفوفة
Console.WriteLine("عناصر المصفوفة:");
foreach (int number in numbers)
{
  Console.WriteLine(number);
}

تذكر أن محاولة الوصول إلى فهرس يتجاوز حدود المصفوفة (مثل، numbers[5]) سيؤدي إلى استثناء IndexOutOfRangeException.

استخدام القوائم للمجموعات الديناميكية

توفر فئة List<T> بديلاً ديناميكيًا قابلًا لإعادة التغيير الحجم للمصفوفات. يتكيف حجمها تلقائيًا مع إضافة أو إزالة العناصر، مما يجعلها مناسبة عندما يكون الحجم النهائي غير معروف.

فيما يلي كيفية إضافة قيم إلى List<T>:


// إعلان قائمة من الأعداد الصحيحة
List<int> numbersList = new List<int>();

// إضافة قيم باستخدام طريقة List<T>.Add(T)
numbersList.Add(15);
numbersList.Add(25);
numbersList.Add(35);
numbersList.Add(45);
numbersList.Add(55);

// طباعة عناصر القائمة
Console.WriteLine("nعناصر القائمة:");
foreach (int number in numbersList)
{
  Console.WriteLine(number);
}

// تحويل List<T> إلى مصفوفة إذا لزم الأمر
int[] numbersArrayFromList = numbersList.ToArray();
Console.WriteLine("n مصفوفة تم إنشاؤها من القائمة:");
foreach (int number in numbersArrayFromList)
{
    Console.WriteLine(number);
}

تضيف طريقة Add() العناصر بكفاءة. تسمح طريقة ToArray() بالتحويل مرة أخرى إلى مصفوفة إذا لزم الأمر.

اختيار النهج الصحيح

يعتمد الخيار الأفضل على احتياجاتك المحددة:

  • المصفوفات: مثالية عندما يكون الحجم معروفًا مسبقًا والأداء هو الأهم. فهي توفر كفاءة أفضل في الذاكرة للمجموعات ذات الحجم الثابت.
  • القوائم: مفضلة عندما يكون الحجم غير معروف أو يحتاج إلى إضافة أو إزالة عناصر بشكل متكرر. توفر List<T> المرونة، على الرغم من أن الأداء قد يكون أقل قليلاً من المصفوفات لعدد كبير من الإضافات المتسلسلة. غالبًا ما يكون هذا الاختلاف ضئيلاً ما لم تكن تتعامل مع مجموعات بيانات ضخمة للغاية حيث يكون الأداء أمرًا بالغ الأهمية.

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *