Swift: Range
Do czego służy Range?
Swift pozwala na tworzenie zakresu liczbowego od...do za pomocą operatora: ....
Przykład:
var range = 1...10
W tym przypadku stworzony został zakres od 1 do 10.
Zakres można wykorzystać na przykład w pętli:
for i in 1...10 {
print(i)
}
Swift daje do ręki programiście trzy typy zakresu:
- Zamknięty
- Półotwarty
- Jednostronny
Zakres zamknięty
Ten typ zakresu określa jego początek i koniec. Wystarczy podać te dwie wartości:
a...b
Za pomocą first i last możesz dostać informację odpowiednio o początku i końcu zakresu:
var range = 1...10
print(range.first!) // 1
print(range.last!) // 10
Dzięki zakresowi możesz pobrać część danych ze zbioru danych:
let users = ["Greg", "Jane", "Spox", "Blue"]
let range = 0...2
print(users[range]) // ["Greg", "Jane", "Spox"]
Zakres półotwarty
Zakres półotwarty określa zakres, który zawiera dane od a do b, ale bez b.
Składnia:
a..<b
Przykład:
var range = 1..<10
print(range.first!) // 1
print(range.last!) // 9
Zakres jednostronny
Jednostronny zakres definiuje wartość tylko z jednej strony zakresu:
a...
lub ...b
Jeśli zdefiniujesz zakres tak:
let range = 10...
To zaczyna się od 10 i kończy na... plus nieskończoności (+∞)
Z kolei:
let range = ...10
Zaczyna się na minus nieskończoności (-∞) do 10.
Gdzie można taki zakres wykorzystać?
Na przykład w tablicach.
Załóżmy, że potrzebujesz pobrać wszystkie elementy tablicy, zaczynając od drugiego elementu:
let users = ["Greg", "Jane", "Spox", "Blue"]
print(users[1...]) // ["Jane", "Spox", "Blue"]
Albo, tylko pierwsze dwa elementy tablicy:
let users = ["Greg", "Jane", "Spox", "Blue"]
print(users[...1]) // ["Greg", "Jane"]