Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

إنشاء المجموعات

جزء من قسم المنطق والتدفق في رحلة Swift على Coddy. الدرس 18 من 56.

مجموعة Set هي تجميعة غير مرتبة من قيم فريدة. نفس نوع الـ element لكل عضو، ولا يُسمح بوجود أي duplicate، وبدون ترتيب تكرار محدد.

var colors: Set<String> = ["red", "green", "blue", "red"]
print(colors.count)              // 3 (يتم إسقاط المكرر "red")

تكون الملاحظة التوضيحية للنوع Set<String> إلزامية في صيغة القيمة المباشرة (literal) لأن ["a", "b"] بمفردها سيتم استنتاجها على أنها Array.

ثلاث عمليات أساسية: contains، و insert، و remove. العمليتان الأخيرتان تُرجعان معلومات حول ما إذا كان التغيير ملموسًا.

colors.insert("yellow")         // يضيفه
colors.insert("red")            // موجود بالفعل، لا تأثير
colors.contains("green")        // true
colors.remove("blue")           // يُرجع "blue" أو nil إذا كان مفقودًا

إنشاء مجموعة من مصفوفة يزيل التكرار في خطوة واحدة:

let unique = Set([1, 2, 2, 3, 3, 3])
// 3 عناصر، الترتيب الدقيق غير مضمون
challenge icon

التحدي

مبتدئ

اقرأ سطرًا واحدًا من الإدخال: قائمة من الكلمات المفصولة بفواصل (قد تحتوي على تكرارات).

اطبع ثلاثة أسطر:

  1. عدد الكلمات الـ unique (استخدم Set)
  2. الكلمات الـ unique مرتبة أبجديًا، ومدمجة مع ,
  3. true عندما يحتوي الإدخال على الكلمة swift، وإلا false (استخدم contains)

بالنسبة للإدخال swift,ruby,go,swift,go,rust، تكون المخرجات:

4
go,ruby,rust,swift
true

جرّب بنفسك

let words = readLine()!.components(separatedBy: ",")

// TODO: أزل التكرارات عبر Set، اطبع العدد، المفروز المربوط، يحتوي على النص الدقيق من التعليمات
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس المنطق والتدفق

تدرّب بنفسك: Playground لـ Swift