بازه ها (Swift Ranges)
«بازه ها» محدوده ای از اعداد یا اندیس ها هستند. «بسته (Closed)» یعنی دو سر شامل است. «نیمه باز (Half-Open)» یعنی سر بالا شامل نیست. با بازه ها، پیمایش و برش آرایه ها خیلی تمیز می شود.
بازه بسته و نیمه باز
الگوی a...b بسته است و هر دو سر را شامل می شود. الگوی a..<b نیمه باز است و سر بالا را شامل نمی شود. مثل شماره صندلی های کلاس از 1 تا 5.
for n in 1...5 {
print(n)
}
for n in 1..<5 {
print(n)
}
let r = 10...12
print(r.contains(11))
print(r.contains(13))
بازه های یک طرفه
در «یک طرفه (One-Sided)» یکی از سرها حذف می شود. ...b از ابتدا تا b می رود. a... از a تا انتها می رود. برای برش آرایه عالی است.
let arr = [0, 1, 2, 3, 4]
print(arr[...2])
print(arr[2...])
گام های عملی
- یک حلقه با
1...5بساز و خروجی را ببین. - حلقه را به
1..<5تغییر بده و تفاوت را چک کن. - روی آرایه با
[...2]و[2...]برش بزن.
نکته: اگر با آرایه کار می کنی، «اندیس ها و کران ها» بسیار مهم است. همچنین برای پیمایش، «حلقه روی آرایه» را ببین. برای توضیح بیشتر خود «بازه ها» را بخوان.
جمع بندی سریع
...شامل دو سر است...<سر بالا را حذف می کند.- بازه یک طرفه برای برش عالی است.
containsعضویت را بررسی می کند.