أنماط foreach ومهيئات المجموعات
اكتب حلقات foreach آمنة على المصفوفات والقوائم والقواميس، وهيّئ المجموعات بإيجاز باستخدام صيغة مهيئ المجموعة.
أنماط foreach ومهيئات المجموعات درس مجاني في C# Academy على CoddyKit. هذا هو الدرس 2 من أصل 3. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في C# Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة C# Academy 3 دروس في المجموع.
نظرة عامة
الهدف: كرّر بأمان باستخدام foreach وأنشئ المجموعات واملأها باستخدام مهيئات المجموعات.
- التكرار باستخدام foreach على المصفوفات والقوائم
- التكرار باستخدام foreach على القواميس
- مهيئات List<T> وDictionary<K,V>
التكرار باستخدام foreach على المصفوفات والقوائم
يُعد foreach بسيطًا وآمنًا: فهو يقرأ العناصر واحدًا تلو الآخر دون فهرسة يدوية.
using System;
using System.Collections.Generic;
public class Program
{
public static void Main(string[] args)
{
int[] nums = new int[] { 2, 4, 6 };
int sum = 0;
foreach (int n in nums) // no index to manage, safe bounds
{
sum = sum + n;
}
Console.WriteLine("Sum = " + sum);
List<string> names = new List<string>();
names.Add("Ada");
names.Add("Alan");
foreach (string s in names)
{
Console.WriteLine("Hi " + s);
}
}
}
الفهرسة باستخدام foreach
إذا احتجت إلى فهرس مع foreach، فاحتفظ بمتغير عدّاد صغير.
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.Add("cherry");
int i = 0;
foreach (string item in items)
{
Console.WriteLine("#" + i + ": " + item);
i = i + 1; // manual index when needed
}
}
}
التكرار باستخدام foreach على القاموس
يعيد التكرار على القاموس كائنات من النوع KeyValuePair<K,V>؛ أو يمكنك التكرار على Keys/Values فقط.
using System;
using System.Collections.Generic;
public class Program
{
public static void Main(string[] args)
{
Dictionary<string, int> stock = new Dictionary<string, int>();
stock["pen"] = 10;
stock["book"] = 5;
foreach (KeyValuePair<string, int> kv in stock)
{
Console.WriteLine(kv.Key + " -> " + kv.Value);
}
// Iterate keys or values only
foreach (string k in stock.Keys) { Console.WriteLine("Key: " + k); }
foreach (int v in stock.Values) { Console.WriteLine("Value: " + v); }
}
}
مهيئ List<T>
ينشئ مهيئ المجموعة قائمة ويملؤها في تعبير واحد؛ ويتوسع إلى استدعاءات متكررة لـAdd.
using System;
using System.Collections.Generic;
public class Program
{
public static void Main(string[] args)
{
// Calls Add for each element under the hood
List<string> fruits = new List<string> { "apple", "banana", "cherry" };
foreach (string f in fruits)
{
Console.WriteLine(f);
}
}
}
مهيئ Dictionary
يستخدم مهيئ القاموس إدخالات من الشكل { key, value }؛ ويتوسع ذلك إلى استدعاءات Add(key, value).
using System;
using System.Collections.Generic;
public class Program
{
public static void Main(string[] args)
{
// Each { key, value } becomes Add(key, value)
Dictionary<string, int> scores = new Dictionary<string, int>
{
{ "Ada", 95 },
{ "Alan", 90 }
};
// Show contents
foreach (KeyValuePair<string, int> kv in scores)
{
Console.WriteLine(kv.Key + " = " + kv.Value);
}
}
}
فائدة المهيئات
خلاصة
الخلاصة: استخدم foreach للتكرار بأمان على المصفوفات والقوائم والقواميس. وفضّل مهيئات المجموعات لإنشاء المجموعات وملئها بإيجاز.
الأسئلة الشائعة
هل درس «أنماط foreach ومهيئات المجموعات» مجاني؟
نعم — نص درس «أنماط foreach ومهيئات المجموعات» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة C# Academy، انتقل إلى CoddyKit PRO. تتضمن دورة C# Academy 3 دروس في المجموع.
ماذا ستتعلم في «أنماط foreach ومهيئات المجموعات»؟
اكتب حلقات foreach آمنة على المصفوفات والقوائم والقواميس، وهيّئ المجموعات بإيجاز باستخدام صيغة مهيئ المجموعة. تتمرن على C# Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ C# Academy؟
لا تُشترط خبرة سابقة. C# Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 3.
كم من الوقت يستغرق درس «أنماط foreach ومهيئات المجموعات»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس C# Academy هذا؟
نعم. كل درس في C# Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- المصفوفات والتقطيع وList وDictionary
- أنماط foreach ومهيئات المجموعات
- لمحة عن LINQ: Where وSelect وOrderBy وTake/Skip؛ التنفيذ المؤجل