I denne artikkelen vil du lære å bruke to betingede utsagn: hvis og hvis … ellers for å kontrollere flyten av programutførelsen.
I programmeringen vil du kanskje utføre forskjellige handlinger basert på den angitte tilstanden er true
eller false
(som bare er kjent i løpetiden). I slike tilfeller brukes kontrollflytsetninger.
Swift if (if-then) uttalelse
Syntaksen for if-setningen i Swift er:
hvis uttrykk (// uttalelser)
- Her
expression
er et boolsk uttrykk (returnerer ententrue
ellerfalse
). - Hvis den
expression
blir evaluert tiltrue
, blir utsagn i kodeblokkenif
utført. - Hvis den
expression
blir evaluert tilfalse
,if
hoppes utsagn i kodeblokken av fra kjøring.
Hvordan hvis uttalelse fungerer?
Eksempel 1: Swift if Statement
let number = 10 if number> 0 ( print("Number is positive.") ) print("This statement is always executed.")
Når du kjører programmet, vil utdataene være:
Antall er positivt. Denne uttalelsen blir alltid utført.
I det ovennevnte programmet har vi initialisert konstant tall med verdi 10, og testuttrykket number> 0
evalueres til sant. Derfor er utsagnet print("Number is positive.")
i kroppen til om utsagnet utføres hvilket utgangsnummer er positivt. i konsollen …
Endre nå verdien på tallet til et negativt heltall. La oss si det -5
. Resultatet i dette tilfellet vil være:
Denne uttalelsen blir alltid utført.
Når tallet initialiseres med verdien -5, blir testuttrykket number> 0
evaluert til falskt. Derfor hopper Swift-kompilatoren utførelsen av kroppen til if-uttalelsen.
Uttalelse om rask hvis … annet (hvis-annet)
If-setningen utfører en viss del av koden hvis testuttrykket blir evaluert til sant. If-setningen kan ha valgfri annet-setning. Kode inne i annet uttalelse utføres hvis testuttrykket er falskt.
Syntaksen for if-else-setningen er:
hvis uttrykk (// utsagn) annet (// utsagn)
Hvordan hvis … annet uttalelse fungerer?
Eksempel 2: Swift if else-uttalelse
let number = 10 if number> 0 ( print("Number is positive.") ) else ( print("Number is not positive.") ) print("This statement is always executed.")
Når du kjører programmet, vil utdataene være:
Antall er positivt. Denne uttalelsen blir alltid utført
I programmet ovenfor initialiseres konstant antall med verdi 10 og testuttrykket number> 0
evalueres til true
. Derfor er utsagnet print("Number is positive.")
i kroppen til om uttalelsen blir utført.
Dette resultatet er positivt. i konsollen og utsagnene i kroppen til ellers hoppes over fra utførelsen.
Endre nå verdien på tallet til et negativt tall. La oss si -5. Resultatet i dette tilfellet vil være:
Antall er ikke positivt. Denne uttalelsen blir alltid utført.
Når tallet er -5, blir testuttrykket number> 0
evaluert til false
. I dette tilfellet blir uttalelser i kroppen av annet utført, og uttalelser i kroppen om hvis hoppes over fra utførelsen.
Du kan også erstatte hvis … annet uttalelse med ternær operatør i Swift, som er en kort beskrivelse av hvis … annet uttalelse.
Rask hvis … annet … hvis (hvis-annet-hvis) uttalelse
I Swift er det også mulig å utføre en kodeblokk blant mange. For det kan du bruke hvis … annet … hvis stige som:
Syntaksen til if-else-if setningen er:
hvis expression1 (// uttalelser) annet hvis expression2 (// uttalelser) annet hvis expression3 (// uttalelser)… annet (// uttalelser)
If-setningene utføres fra toppen mot bunnen. Så snart testuttrykket er sant, koder i kroppen til det hvis setningen blir utført. Deretter hopper kontrollen over programmet utenfor if-else-if ladder.
Hvis alle testuttrykk er false
, utføres kode inne i annet
Eksempel 3: Swift if … else … if Statement
Følgende program sjekker om tallet er positivt, negativt eller 0.
let number = 0; if number> 0 ( print("Number is positive.") ) else if (number < 0) ( print("Number is negative.") ) else ( print("Number is 0.") )
Når du kjører programmet, vil utdataene være:
Antallet er 0.
I det ovennevnte programmet initialiseres konstant tall med verdien 0. Siden hvis setninger kjøres fra topp til bunn, sjekker det uttrykket number> 0
som evalueres til false
.
Deretter sjekker det neste uttrykket number < 0
som også evalueres til falskt.
Derfor blir utsagnet print("Number is 0.")
i kroppen av annet utført hvilke utganger Antall er 0. i konsollen.
Swift nestet hvis … annet uttalelse
Det er mulig å ha hvis … annet uttalelser inne i en hvis … annet uttalelse i Swift. Det kalles nestet hvis … annet uttalelse.
Du kan også erstatte nested if … else-uttalelse med switch i Swift, som noen ganger er en enklere tilnærming når du arbeider med flere mulige alternativer.
Syntaksen for nestet if-else-setning er:
hvis expression1 (hvis expression2 (// uttalelser) annet (// uttalelser)) annet (hvis expression3 (// uttalelser) annet (// uttalelser))
Eksempel 4: Nestet hvis … annet uttalelse
Her er et program for å finne det største av tre tall ved hjelp av nestede hvis annet uttalelser.
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) ) )
Når du kjører programmet ovenfor, vil utdataene være:
Største antall er 4,5