#4 Kurs Swift – Pętle i instrukcje warunkowe
W tej części zajmiemy się dwoma ważnymi mechanizmami, a mianowicie pętlami i instrukcjami warunkowymi. Oba te elementy są spotykane w każdym programie i znajdują szereg zastosować, w języku Swift wyglądają one następująco.
Pętle
Jest to konstrukcja, która pozwala na cykliczne wykonywanie określonych działań do spełniania określonego warunku końcowego. W języku Swift występuje kilka rodzajów pętli.
For
Klasyczny rodzaj pętli, która polega na wykonywaniu iteracji aż do momentu spełniania warunku końcowego Pętla ta zawiera 3 argumenty. Pierwszy określa stan początkowy, drugi określa warunek końcowy, a trzeci określa co ma się dziać po każdej iteracji. Przykład takiej prostej pętli która odlicza do 5 został zaprezentowany poniżej. Pętla ta wykona się dokładnie 5 razy.
var start: Int for start = 1; start <= 5; start++ { println("Licznik = \(start)") } // Na ekranie pojawi się // Licznik = 1 // Licznik = 2 // Licznik = 3 // Licznik = 4 // Licznik = 5
For-in
Pętla ta polega na tym że przechodzi przez wszystkie elementy z wybranego zbioru danych. Może być to np. tablica. Jest stosunkowo prosta w zapisie i zajmuje mało miejsca, a co za tym idzie jest czytelna w kodzie. Poniżej przykład pętli for-in, pęta ta wykona się 3 razy, dla każdego elementu z tablicy.
let pojazdy: Array <String> = ["Audi", "BMW", "Opel] for pojazd in pojazdy { println("Pojazd: \(pojazd)") } // Na ekranie pojawi się // Pojazd: Audi // Pojazd: BMW // Pojazd: Opel
While
Pętla while powtarza instrukcje dopóki zawarty w niej warunek jest spełniony. Poniższa pęta wykona się 10 razy. Jak widać wewnątrz pętli musimy zadbać o to aby zwiększać zmienną liczba, ponieważ bez tego program by się zapętlił i wykonywał się w kółko.
var liczba: Int = 0 while liczba < 10 { liczba++ }
Do-While
Najważniejszą różnicą od while jest to że warunek jest sprawdzany na końcu pętli, przez co pętla wykona się co najmniej raz, nawet jeśli warunek nie jest spełniony. Co pokazuje poniższy przykład że pomimo zmienna liczba wynosi 10 to i tak pętla wykona się jeden raz i zwiększy wartość do 11.
var liczba: Int = 10 do { liczba++ } while liczba < 10
Każda pętla ma swoje zastosowania w programie, polecam przetestować działanie każdej z nich i uważać na częsty błąd jakim jest zapętlenie.
Instrukcje warunkowe
Jest to konstrukcja pozwalająca na wykonanie określonego kodu w zależności od zdefiniowanego warunku (true/false).
If i If-Else
Instrukcje te sprawdzają który blok kodu ma zostać wykonany pod wpływem określonego warunku. W poniższym przykładzie sprawdzany jest wiek.
let wiek: Int = 18 if wiek >= 18 { println("Tak, jesteś pełnoletni!") } else if wiek >=10 { println("Jesteś młodzieńcem!") } else { println("Jesteś dzieckiem!") }
Słowa kluczowe continue, break
Continue – powoduje przerwanie aktualnej iteracji i przejście do nowej
Break – przerywa działanie i wychodzi z pętli
To już wszystko na temat pętli, teraz zachęcam to ich przetestowania w praktyce.