Hitra izjava if, if ... else (s primeri)

V tem članku se boste naučili uporabljati dva pogojna stavka: če in če … drugače za nadzor poteka izvajanja vašega programa.

Pri programiranju boste morda želeli izvesti različna dejanja na podlagi določenega pogoja je trueali false(kar je znano samo med izvajanjem). V takih primerih se uporabljajo izjave o nadzornem toku.

Hitra izjava if (if-then)

Sintaksa stavka if v Swiftu je:

 if izraz (// stavki)
  • Tu expressionje logični izraz (vrne bodisi trueali false).
  • Če expressionse ovrednoti z true, ifse izvršijo stavki znotraj bloka kode .
  • Če expressionje vrednost ovrednotena false, se stavki znotraj bloka kode ifpreskočijo iz izvajanja.

Kako, če stavek deluje?

Primer 1: Hitra izjava if

 let number = 10 if number> 0 ( print("Number is positive.") ) print("This statement is always executed.") 

Ko zaženete program, bo rezultat:

Številka je pozitivna. Ta izjava se vedno izvrši.

V zgornjem programu smo inicializirali konstantno število z vrednostjo 10 in testni izraz number> 0oceni na true. Zato je stavek print("Number is positive.")v telesu if stavka izveden, kar izpiše Number, je pozitivno. v konzoli …

Zdaj spremenite vrednost števila v negativno celo število. Recimo -5. Rezultat v tem primeru bo:

 Ta izjava se vedno izvrši.

Ko je številka inicializirana z vrednostjo -5, se testni izraz number> 0oceni na false. Prevajalnik Swift zato preskoči izvajanje telesa stavka if.

Hitra izjava, če … drugače (če ne)

Stavek if izvede določen odsek kode, če je testni izraz ovrednoten kot true. Stavek if ima lahko neobvezno izjavo else. Koda znotraj telesa stavka else se izvede, če je testni izraz napačen.

Sintaksa stavka if-else je:

 if izraz (// stavki) else (// stavki)

Kako, če… druga izjava deluje?

Primer 2: Hitra izjava, če ne

 let number = 10 if number> 0 ( print("Number is positive.") ) else ( print("Number is not positive.") ) print("This statement is always executed.") 

Ko zaženete program, bo rezultat:

Številka je pozitivna. Ta izjava se vedno izvrši

V zgornjem programu se konstantno število inicializira z vrednostjo 10 in testni izraz number> 0ovrednoti na true. Zato je stavek print("Number is positive.")znotraj telesa if stavka izveden.

To izpiše Število je pozitivno. v konzoli in stavki v telesu else so izpuščeni.

Zdaj spremenite vrednost številke v negativno število. Recimo -5. Rezultat v tem primeru bo:

Številka ni pozitivna. Ta izjava se vedno izvrši.

Ko je število -5, se testni izraz number> 0izračuna na false. V tem primeru se stavki znotraj telesa else izvršijo, stavki znotraj telesa if pa se preskočijo iz izvršitve.

Stavek if … else lahko tudi zamenjate s ternarnim operatorjem v Swiftu, kar je nekakšen okrajšani zapis stavka if … else.

Hitro, če … drugače … če (če-drugače-če) Izjava

V Swiftu je mogoče med številnimi izvršiti tudi en blok kode. Za to lahko uporabite če … drugače … če lestev kot:

Sintaksa stavka if-else-if je:

 if izraz1 (// stavki) else če izraz2 (// stavki) else če izraz3 (// stavki)… else (// stavki)

Stavki if se izvajajo od zgoraj proti dnu. Takoj ko je testni izraz resničen, se kode znotraj telesa tistega stavka if izvršijo. Nato nadzor programa skoči zunaj lestve if-else-if.

Če so vsi testni izrazi false, se izvede koda znotraj telesa else

Primer 3: Hitro, če … drugače … če Izjava

Naslednji program preveri, ali je število pozitivno, negativno ali 0.

 let number = 0; if number> 0 ( print("Number is positive.") ) else if (number < 0) ( print("Number is negative.") ) else ( print("Number is 0.") ) 

Ko zaženete program, bo rezultat:

 Število je 0.

V zgornjem programu je konstantno število inicializirano z vrednostjo 0. Ker se stavki izvajajo od zgoraj navzdol, preveri izraz, number> 0ki ovrednoti do false.

Nato preveri naslednji izraz, number < 0ki prav tako oceni na false.

Zato print("Number is 0.")se izvrši stavek v telesu else, ki v konzoli izpiše Number .

Izjava hitro ugnezdena, če … drugače

Mogoče je imeti stavke if … else znotraj stavka if … else v Swiftu. Imenuje se ugnezdena izjava if … else.

Izjavo ugnezdeni if ​​… else lahko nadomestite tudi s preklopom v Swiftu, ki je včasih preprostejši pristop pri obravnavi več možnih možnosti.

Sintaksa ugnezdenega stavka if-else je:

 če izraz1 (če izraz2 (// stavki) else (// stavki)) else (če izraz3 (// stavki) else (// stavki))

Primer 4: izjava ugnezdena, če … drugače

Tukaj je program za iskanje največje od treh številk z uporabo ugnezdenih stavkov if else.

 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) ) ) 

Ko zaženete zgornji program, bo rezultat:

 Največje število je 4,5

Zanimive Članki...