0Pricing
C# Academy · درس

المصفوفات والتقطيع وList<T> وDictionary<TKey,TValue>

أنشئ المصفوفات واستخدمها، وانسخ جزءًا منها، وتعامَل مع List وDictionary للعناصر الديناميكية وعمليات البحث القائمة على المفاتيح.

المصفوفات والتقطيع وList<T> وDictionary<TKey,TValue> درس مجاني في C# Academy على CoddyKit. هذا هو الدرس 1 من أصل 3. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في C# Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة C# Academy 3 دروس في المجموع.

نظرة عامة على الدرس

الهدف: اختر الحاوية المناسبة.

  • Array: حجم ثابت وفهرسة سريعة
  • List<T>: يزداد حجمه وينقص
  • Dictionary<TKey,TValue>: بحث سريع بالمفتاح
  • نسخ جزء بسيط من المصفوفة

أساسيات Array

المصفوفات ثابتة الحجم وقابلة للفهرسة. استخدم Length والفهارس التي تبدأ من الصفر.

using System;

public class Program
{
  public static void Main(string[] args)
  {
    int[] nums = new int[] { 10, 20, 30 };
    Console.WriteLine("Length = " + nums.Length);
    Console.WriteLine("First = " + nums[0]);
    Console.WriteLine("Last = " + nums[nums.Length - 1]);

    // Update by index
    nums[1] = 25;
    Console.WriteLine("Updated middle = " + nums[1]);
  }
}

نسخ جزء من المصفوفة

لا يوجد معامل نطاق في C# 6. أنشئ أسلوبًا مساعدًا صغيرًا باستخدام Array.Copy لنسخ جزء من المصفوفة.

using System;

public class Program
{
  // Copy a slice [start, start+count) into a new array
  public static int[] Slice(int[] src, int start, int count)
  {
    int[] dst = new int[count];
    Array.Copy(src, start, dst, 0, count);
    return dst;
  }

  public static void Main(string[] args)
  {
    int[] data = new int[] { 5, 6, 7, 8, 9 };
    int[] middle = Slice(data, 1, 3); // {6,7,8}
    Console.WriteLine("Slice len=" + middle.Length + " first=" + middle[0] + " last=" + middle[middle.Length - 1]);
  }
}

أساسيات List<T>

تغيّر List<T> حجمها تلقائيًا. استخدم Add/Insert/Remove وCount.

using System;
using System.Collections.Generic;

public class Program
{
  public static void Main(string[] args)
  {
    List<string> items = new List<string>();
    items.Add("apple");
    items.Add("banana");
    items.Insert(1, "kiwi"); // apple, kiwi, banana
    Console.WriteLine("Count = " + items.Count);
    Console.WriteLine("Second = " + items[1]);

    items.Remove("apple");
    Console.WriteLine("After remove, first = " + items[0]);
  }
}

أساسيات Dictionary

يخزّن Dictionary أزواج المفتاح والقيمة. استخدم ContainsKey/TryGetValue لإجراء عمليات بحث آمنة.

using System;
using System.Collections.Generic;

public class Program
{
  public static void Main(string[] args)
  {
    Dictionary<string, int> ages = new Dictionary<string, int>();
    ages["Ada"] = 28;           // add
    ages["Alan"] = 35;          // add
    ages["Alan"] = 36;          // update

    int value;
    if (ages.TryGetValue("Ada", out value))
    {
      Console.WriteLine("Ada age = " + value);
    }

    Console.WriteLine("Has Grace? " + ages.ContainsKey("Grace"));
  }
}

اختيار المجموعات

اختر:

  • Array للحجم الثابت والفهرسة الرقمية
  • List<T> عندما يتغير الحجم
  • Dictionary<K,V> عندما تكون لديك مفاتيح فريدة
  • انسخ أجزاء المصفوفات باستخدام أسلوب مساعد يعتمد على Array.Copy

اختيار البحث بالمفتاح

تحقق سريعًا: ما المجموعة الأفضل عندما تحتاج إلى عمليات بحث سريعة باستخدام مفتاح فريد؟

خلاصة

الخلاصة: المصفوفات ثابتة الحجم؛ انسخ الأجزاء باستخدام Array.Copy. استخدم List<T> للقوائم الديناميكية وDictionary<K,V> لعمليات البحث السريعة بالمفتاح.

الأسئلة الشائعة

هل درس «المصفوفات والتقطيع وList<T> وDictionary<TKey,TValue>» مجاني؟

نعم — نص درس «المصفوفات والتقطيع وList<T> وDictionary<TKey,TValue>» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة C# Academy، انتقل إلى CoddyKit PRO. تتضمن دورة C# Academy 3 دروس في المجموع.

ماذا ستتعلم في «المصفوفات والتقطيع وList<T> وDictionary<TKey,TValue>»؟

أنشئ المصفوفات واستخدمها، وانسخ جزءًا منها، وتعامَل مع List وDictionary للعناصر الديناميكية وعمليات البحث القائمة على المفاتيح. تتمرن على C# Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ C# Academy؟

لا تُشترط خبرة سابقة. C# Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 3.

كم من الوقت يستغرق درس «المصفوفات والتقطيع وList<T> وDictionary<TKey,TValue>»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس C# Academy هذا؟

نعم. كل درس في C# Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. المصفوفات والتقطيع وList وDictionary
  2. أنماط foreach ومهيئات المجموعات
  3. لمحة عن LINQ: ‏Where وSelect وOrderBy وTake/Skip؛ التنفيذ المؤجل
← العودة إلى C# Academy