ست ها (Sets)
در سوئیفت، «ست (Set)» ظرفی برای مقادیر یکتا است. یعنی تکراری ها حذف می شوند. ترتیب هم تضمین شده نیست. برای چک کردن «عضویت (Membership)» از contains استفاده می کنیم. همچنین با عملگرهای «union»، «intersection»، و «subtracting» می توانیم مجموعه ها را ترکیب یا مقایسه کنیم.
حذف تکراری ها با ست
وقتی آرایه ات آیتم تکراری دارد، ست کمک بزرگی است. مثل برداشتن کارت های تکراری از یک بسته کارت.
var letters: Set<Character> = ["a", "b", "a"]
print(letters.contains("a"))
نکته: چون ست یکتاست، مقدار "a" فقط یک بار نگه داشته می شود.
عملیات روی ست ها
با «union» دو ست را یکی می کنیم. با «intersection» اشتراک می گیریم. با «subtracting» تفاوت می گیریم. برای دیدن نتیجه مرتب، از sorted() کمک بگیر.
let a: Set<Int> = [1, 2, 3]
let b: Set<Int> = [3, 4]
print(a.union(b).sorted())
print(a.intersection(b).sorted())
print(a.subtracting(b).sorted())
هشدار: به ترتیب عناصر اعتماد نکن. ست ترتیب مشخصی ندارد.
گام های عملی
- یک ست بساز و چند مقدار تکراری اضافه کن.
- با
containsوجود یک مقدار را بررسی کن. - دو ست مختلف بساز و union، intersection، و subtracting را چاپ کن.
برای مطالعه بیشتر به کالکشن ها برو. همچنین بخش دیکشنری ها را ببین. این صفحه ست ها را هم نشانه گذاری کن.
جمع بندی سریع
- ست، آیتم های یکتا نگه می دارد.
- ترتیب در ست مهم نیست.
containsبرای چکِ عضویت است.- union، intersection، subtracting ترکیب و مقایسه می کنند.