عمليات المجموعات: union وintersection وdifference
ادمج المجموعات وقارن بينها
عمليات المجموعات: union وintersection وdifference درس مجاني في Dart Academy على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Dart Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Dart Academy 4 دروس في المجموع.
تجري Sets العمليات الرياضية
تستعير Sets أفكارها من الرياضيات. وباستخدام ثلاث طرق صغيرة، يمكنك دمجها أو مقارنتها كما في دوائر مخطط Venn. 🔵
تعرّف إلى union
تدمج طريقة union مجموعتين في مجموعة واحدة. يظهر كل عنصر من المجموعتين، وتندمج التكرارات في نسخة واحدة.
var a = {1, 2};
var b = {2, 3};
print(a.union(b));يحافظ union على التفرد
حتى عندما تشترك المجموعتان في بعض القيم، تظل union تُرجع Set، لذلك لا تحتوي النتيجة على قيم مكررة.
var r = {1, 2}.union({2, 2, 3});تعرّف إلى intersection
تُبقي طريقة intersection على العناصر الموجودة في كلتا المجموعتين فقط. وهي تجيب عن سؤال: ما العناصر المشتركة بين هاتين المجموعتين؟
var a = {1, 2, 3};
var b = {2, 3, 4};
print(a.intersection(b));لا يوجد تداخل، والنتيجة فارغة
إذا لم تشترك مجموعتان في أي عنصر، تُرجع intersection Set فارغة بدلًا من إطلاق خطأ.
var r = {1, 2}.intersection({3, 4});تعرّف إلى difference
تُرجع طريقة difference العناصر الموجودة في المجموعة الأولى وغير الموجودة في الثانية. فكّر فيها كعملية طرح.
var a = {1, 2, 3};
var b = {2};
print(a.difference(b));الترتيب مهم هنا
بخلاف union، لا تتمتع difference بالتماثل. يؤدي تبديل المجموعتين إلى نتيجة مختلفة.
var x = {1, 2}.difference({2, 3});النتائج Sets جديدة
تنشئ كل واحدة من هذه الطرق Set جديدة وتُرجعها. وتبقى Sets الأصلية كما كانت تمامًا.
التحقق من المجموعة الجزئية
استخدم containsAll لمعرفة ما إذا كانت إحدى المجموعتين موجودة بالكامل داخل مجموعة أخرى. تُرجع true فقط عندما تكون كل العناصر موجودة.
var big = {1, 2, 3};
print(big.containsAll({1, 2}));تسلسل العمليات
بما أن كل استدعاء يُرجع Set، يمكنك تسلسل العمليات معًا للتعبير عن منطق أكثر تعقيدًا في سطر واحد.
var r = {1, 2, 3}.union({4}).difference({1});حالة استخدام واقعية
هل تقارن قائمتَي وسوم؟ تعثر intersection على الوسوم المشتركة، بينما تكشف difference ما يوجد في أحد الطرفين فقط.
var shared = {'a', 'b'}.intersection({'b', 'c'});تحقق سريع
ما الطريقة التي تُرجع العناصر المشتركة بين مجموعتين فقط؟
مراجعة
أحسنت! استخدم union للدمج، وintersection للعثور على العناصر المشتركة، وdifference للطرح. تجعل العمليات الرياضية على Sets التعليمات البرمجية نظيفة. 🎯
الأسئلة الشائعة
هل درس «عمليات المجموعات: union وintersection وdifference» مجاني؟
نعم — نص درس «عمليات المجموعات: union وintersection وdifference» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Dart Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Dart Academy 4 دروس في المجموع.
ماذا ستتعلم في «عمليات المجموعات: union وintersection وdifference»؟
ادمج المجموعات وقارن بينها تتمرن على Dart Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Dart Academy؟
لا تُشترط خبرة سابقة. Dart Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.
كم من الوقت يستغرق درس «عمليات المجموعات: union وintersection وdifference»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Dart Academy هذا؟
نعم. كل درس في Dart Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- المجموعات وضمان التفرد
- عمليات المجموعات: union وintersection وdifference
- Maps كمخازن للمفاتيح والقيم
- التكرار على المدخلات والمفاتيح والقيم