0Pricing
Dart Academy · درس

المجموعات وضمان التفرد

خزّن العناصر من دون تكرارات

المجموعات وضمان التفرد درس مجاني في Dart Academy على CoddyKit. هذا هو الدرس 1 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Dart Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Dart Academy 4 دروس في المجموع.

ما هي Set

‏Set هي مجموعة غير مرتبة تكون كل عناصرها فريدة. إنها أداتك المناسبة عندما يجب ألا تتكرر العناصر. 👍

إنشاء Set

استخدم الأقواس المعقوفة مع القيم لإنشاء Set. يتعرف Dart على العناصر ويفهم أنها Set وليست Map.

var colors = {'red', 'green', 'blue'};

تحتاج Sets الفارغة إلى نوع

تعني الأقواس المعقوفة الفارغة Map فارغة، وليس Set. للحصول على Set فارغة، اكتب النوع حتى يعرف Dart مقصدك.

var tags = <String>{};

تختفي التكرارات ببساطة

إضافة قيمة موجودة مسبقًا لا تغيّر شيئًا. تحتفظ Set بنسخة واحدة فقط من كل عنصر دون إصدار أي تنبيه.

var nums = {1, 2, 2, 3};

إضافة العناصر

استدعِ add لإدراج قيمة. إذا كانت موجودة مسبقًا، تبقى Set كما هي ولا يحدث أي خطأ.

var s = <int>{};
s.add(5);
s.add(5);

إزالة العناصر

استخدم remove لإزالة قيمة. فهي تُرجع true إذا كان العنصر موجودًا، وfalse إذا لم يكن موجودًا.

var s = {1, 2, 3};
s.remove(2);

التحقق من العضوية

تجيب طريقة contains بسرعة عن سؤال بنعم أو لا. هذا البحث السريع هو القوة الحقيقية لـSets.

var s = {'a', 'b'};
print(s.contains('a'));

ما حجمها؟

تخبرك الخاصية length بعدد العناصر الفريدة الموجودة في Set حاليًا.

var s = {1, 1, 2, 3};
print(s.length);

Sets غير مرتبة

لا تعتمد على ترتيب العناصر في Set. إذا كنت تحتاج إلى ترتيب ثابت، فاستخدم List بدلًا منها.

من List إلى Set

ضع List داخل Set للتخلص من التكرارات فورًا. هذه أنظف طريقة لإزالة التكرارات من القيم.

var unique = {1, 2, 2, 3}.toList();

التكرار على Set

إن Set قابلة للتكرار، لذلك تزور حلقة for-in كل عنصر فريد واحدًا تلو الآخر.

for (var c in {'red', 'blue'}) {
  print(c);
}

تحقق سريع

أضفت القيمة نفسها إلى Set مرتين. ماذا يحدث؟

مراجعة

أحسنت! تحتفظ Set بعناصر فريدة وغير مرتبة، مع دعم سريع لـadd وremove وcontains. استخدمها كلما لم تكن التكرارات مناسبة. 🎉

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

هل درس «المجموعات وضمان التفرد» مجاني؟

نعم — نص درس «المجموعات وضمان التفرد» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Dart Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Dart Academy 4 دروس في المجموع.

ماذا ستتعلم في «المجموعات وضمان التفرد»؟

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

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

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

كم من الوقت يستغرق درس «المجموعات وضمان التفرد»؟

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

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

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

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

  1. المجموعات وضمان التفرد
  2. عمليات المجموعات: union وintersection وdifference
  3. Maps كمخازن للمفاتيح والقيم
  4. التكرار على المدخلات والمفاتيح والقيم
← العودة إلى Dart Academy