Kiire, kui, kui ... muu avaldus (koos näidetega)

Selles artiklis õpitakse kasutama kahte tingimuslauset: kas ja kui … muul viisil saate oma programmi täitmise voogu juhtida.

Programmeerimisel võiksite teha erinevaid toiminguid, lähtudes määratud tingimusest truevõi false(mis on teada ainult käitamisaja jooksul). Sellistel juhtudel kasutatakse kontrollvoo avaldusi.

Kiire, kui (kui-siis) avaldus

If-i lause süntaks Swiftis on:

 kui avaldis (// avaldused)
  • Siin expressionon tõeväärtuse avaldis (tagastab kas truevõi false).
  • Kui väärtuseks expressionhinnatakse true, iftäidetakse koodilause sees olevad avaldused .
  • Kui väärtuseks expressionhinnatakse false, ifjäetakse koodiploki sees olevad laused täitmisest vahele.

Kuidas siis, kui avaldus töötab?

Näide 1: kiire lause kui

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

Programmi käivitamisel on väljund järgmine:

Arv on positiivne. See lause täidetakse alati.

Eespool toodud programmis oleme initsialiseerinud konstantarvu väärtusega 10 ja number> 0testväljend vastab tõele. Seega on lause, mis täidetakse lause print("Number is positive.")kehas, positiivne. konsoolis …

Nüüd muutke arvu väärtus negatiivseks täisarvuks. Ütleme nii -5. Sellisel juhul on väljund:

 See lause täidetakse alati.

Kui number initsialiseeritakse väärtusega -5, number> 0hinnatakse testväljend valeks. Seega jätab Swifti kompilaator if-lause keha täitmise vahele.

Kiire, kui… muu (kui-muu) avaldus

If-lause täidab teatud koodilõigu, kui testväljend on tõene. Lausel if võib olla valikuline muu lause. Koodi lause muu osa käivitatakse juhul, kui testväljend on vale.

If-else lause süntaks on:

 kui avaldis (// avaldused) else (// avaldused)

Kuidas siis, kui muidu lause töötab?

Näide 2: Kiire, kui muidu avaldus

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

Programmi käivitamisel on väljund järgmine:

Arv on positiivne. See lause täidetakse alati

Ülaltoodud programmi konstantse arvu lähtestamiseni väärtusega 10 ja test ekspressiooni number> 0väärtustub true. Seega avaldus print("Number is positive.")kehas, kui lause on täidetud.

Selle väljundite arv on positiivne. konsoolis ja muu kehas olevad laused jäetakse täitmisest kõrvale.

Nüüd muutke arvu väärtus negatiivseks. Oletame, et -5. Sellisel juhul on väljund:

Arv pole positiivne. See lause täidetakse alati.

Kui number on -5 testitav ekspressiooni number> 0hinnatakse väga false. Sel juhul täidetakse lause kehasisesed kehad ja kehasisesed väited, kui need jäetakse täitmisest kõrvale.

Võite ka asendada if … else avalduse kolmefaasilise operaatoriga Swiftis, mis on omamoodi lühimärk if … else avaldusest.

Kiire, kui … muidu … kui (kui-kui-kui) avaldus

Swiftis on võimalik paljude seas teha ka üks koodiplokk. Selleks võite kasutada, kui… muidu … kui redelit, kui:

Lause if-else-if süntaks on:

 kui avaldis1 (// laused) else kui avaldis2 (// laused) else kui avaldis3 (// laused) … else (// laused)

Kui laused täidetakse ülevalt alla. Niipea kui testväljend on tõene, koodistatakse selle lause sisus, kui lause täidetakse. Seejärel hüppab programmi juhtimine redelist välja, kui-muidu-kui.

Kui kõik testväljendid on false, käivitatakse kood muu keha sees

Näide 3: kiire, kui … muidu … kui avaldus

The following program checks whether number is positive, negative or 0.

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

When you run the program, the output will be:

 Number is 0.

In the above program, constant number is initialized with value 0. Since if statements are executed from top to bottom, it checks the expression number> 0 which evaluates to false.

It then checks the next expression number < 0 which also evaluates to false.

Hence, the statement print("Number is 0.") inside the body of else is executed which outputs Number is 0. in the console.

Swift nested if… else Statement

It's possible to have if… else statements inside an if… else statement in Swift. It's called nested if… else statement.

Võite ka pesastatud pesa if … asendada Swifti lülitiga, mis on mitme võimaliku variandi käsitlemisel mõnikord lihtsam lähenemine.

Pesastatud if-else lause süntaks on:

 kui avaldis1 (kui avaldis2 (// laused) muu (// laused)) muu (kui avaldis3 (// laused) muu (// laused))

Näide 4: Pesastatud, kui … muu avaldus

Siin on programm, mis võimaldab leida kolmest numbrist suurima, kasutades pesastatud, kui muud lauseid.

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

Ülaltoodud programmi käivitamisel on väljund:

 Suurim arv on 4,5

Huvitavad Artiklid...