Šiame straipsnyje jūs išmoksite naudoti du sąlyginius sakinius: jei ir jei … kitaip valdyti programos vykdymo eigą.
Programuodami, galbūt norėsite atlikti skirtingus veiksmus, atsižvelgdami į nurodytą sąlygą true
arba false
(kuri žinoma tik vykdymo metu). Tokiais atvejais naudojamos valdymo srauto ataskaitos.
Greitas pareiškimas, jei (jei tada)
„Swift“ teiginio „if“ sintaksė yra:
jei išraiška (// teiginiai)
- Čia
expression
yra loginė išraiška (grąžinatrue
arbafalse
). - Jei
expression
įvertinamatrue
,if
vykdomi sakiniai, esantys kodo bloke . - Jei
expression
įvertinamafalse
, kodo bloke esantys teiginiaiif
praleidžiami iš vykdymo.
Kaip jei teiginys veikia?
1 pavyzdys: greitas teiginys
let number = 10 if number> 0 ( print("Number is positive.") ) print("This statement is always executed.")
Kai paleisite programą, išvestis bus:
Skaičius yra teigiamas. Šis pareiškimas visada vykdomas.
Pirmiau pateiktoje programoje mes inicijavome pastovų skaičių, kurio vertė 10, o bandomoji išraiška number> 0
yra teisinga. Taigi teiginys print("Number is positive.")
, jei vykdomas teiginys, kurio išvestis Skaičius yra kūno teigiamas. konsolėje …
Dabar pakeiskite skaičiaus vertę į neigiamą sveikąjį skaičių. Tarkim -5
. Tokiu atveju išvestis bus:
Šis pareiškimas visada vykdomas.
Kai skaičius inicijuojamas reikšme -5, testo išraiška number> 0
įvertinama kaip klaidinga. Taigi „Swift“ kompiliatorius praleidžia „if“ teiginio vykdymą.
Greitas, jei … kitas (jei ne) pareiškimas
Jei sakinys „if“ vykdo tam tikrą kodo skiltį, jei bandomoji išraiška įvertinta kaip teisinga. „If“ sakinyje gali būti pasirenkamas „else“ sakinys. Kodas, esantis „else“ sakinyje, vykdomas, jei testo išraiška yra klaidinga.
Teiginio „if-else“ sintaksė yra:
jei išraiška (// teiginiai) dar (// teiginiai)
Kaip, jei … dar vienas teiginys veikia?
2 pavyzdys: Greitas, jei kitoks pareiškimas
let number = 10 if number> 0 ( print("Number is positive.") ) else ( print("Number is not positive.") ) print("This statement is always executed.")
Kai paleisite programą, išvestis bus:
Skaičius yra teigiamas. Šis pareiškimas visada vykdomas
Pirmiau pateiktoje programoje pastovus skaičius inicijuojamas 10 verte, o bandomoji išraiška number> 0
vertinama iki true
. Taigi, teiginys, print("Number is positive.")
esantis kūno viduje, jei sakinys yra vykdomas.
Šis rezultatas yra teigiamas. konsolėje ir pareiškimai kūno viduje praleidžiami.
Dabar pakeiskite skaičiaus vertę į neigiamą. Tarkime, -5. Tokiu atveju išvestis bus:
Skaičius nėra teigiamas. Šis pareiškimas visada vykdomas.
Kai skaičius yra -5, testo išraiška number> 0
įvertinama false
. Šiuo atveju teiginiai, esantys kito kūno viduje, yra vykdomi, o teiginiai, jei yra, praleidžiami iš vykdymo.
Taip pat galite pakeisti „if… else“ teiginį su trinariu operatoriumi „Swift“, kuris yra tarsi sutrumpintas teiginys if… else.
Greitas, jei … dar … jei (jei-jei-jei) pareiškimas
„Swift“ taip pat galima atlikti vieną kodo bloką tarp daugelio. Tam galite naudoti, jei… dar … jei kopėčias kaip:
„If-else-if“ sakinio sintaksė yra:
jei išraiška1 (// sakiniai) kita, jei išraiška2 (// sakiniai) kita, jei išraiška3 (// sakiniai) … dar viena (// sakiniai)
„If“ sakiniai vykdomi iš viršaus link apačios. Kai tik testo išraiška yra teisinga, kodai yra to kūno viduje, jei vykdomas sakinys. Tada programos valdymas peršokamas už „kopėčių“ laiptelių.
Jei visos testo išraiškos yra false
, vykdomas kodas, esantis kitame kūne
3 pavyzdys: Greita, jei … kita … jei pareiškimas
Ši programa tikrina, ar skaičius yra teigiamas, neigiamas ar 0.
let number = 0; if number> 0 ( print("Number is positive.") ) else if (number < 0) ( print("Number is negative.") ) else ( print("Number is 0.") )
Kai paleisite programą, išvestis bus:
Skaičius yra 0.
Pirmiau pateiktoje programoje pastovus skaičius inicijuojamas reikšme 0. Kadangi, jei teiginiai vykdomi iš viršaus į apačią, jis tikrina išraišką, number> 0
kuri vertina iki false
.
Tada jis patikrina kitą išraišką, number < 0
kuri taip pat vertinama kaip klaidinga.
Vadinasi, print("Number is 0.")
vykdomas kito kūno kūno sakinys , kurio konsole išvestis skaičius yra 0 .
Greitas įdėtas, jei … kitas pareiškimas
„Swift“ teiginyje galima turėti, jei… kitus teiginius. Tai vadinama įdėta, jei … kita.
Taip pat galite pakeisti įdėtą, jei … kitą teiginį, naudodami „Swift“ jungiklį, kuris kartais yra paprastesnis būdas, kai nagrinėjamos kelios galimos parinktys.
Lizdų „if-else“ sakinio sintaksė yra tokia:
jei išraiška1 (jei išraiška2 (// teiginiai) dar (// teiginiai)) kita (jei išraiška3 (// teiginiai) dar (// teiginiai))
4 pavyzdys: įdėta, jei … kita pareiškimas
Čia yra programa, skirta rasti didžiausią iš 3 skaičių, naudojant įdėtus, jei ne kitus teiginius.
let n1 = -1.0, n2 = 4.5, n3 = -5.3 if n1>= n2 ( if n1>= n3 ( print("Largest number is ", n1) ) else ( print("Largest number is ", n3) ) ) else ( if n2>= n3 ( print("Largest number is ", n2) ) else ( print("Largest number is ", n3) ) )
Kai paleisite pirmiau nurodytą programą, išvestis bus:
Didžiausias skaičius yra 4,5