English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In questo articolo, imparerai a utilizzare due statement di condizione: if e if ... else per specificare il flusso di esecuzione del programma.
Nel programming, potresti voler eseguire operazioni diverse in base a una condizione specificata che è true o false (solo conosciuta al runtime). In questo caso, verranno utilizzate le statement di controllo del flusso.
La sintassi dell'istruzione if in Swift è:
if espressione { //语句 {}
L'espressione è un'espressione booleana (che restituisce true o false).
Se l'espressione expression restituisce true, viene eseguito il codice del blocco if.
Se l'espressione expression restituisce false, le statement all'interno del blocco if vengono saltate.
let number = 10 if number > 0 { print("Il numero è positivo.") {} print("Questa istruzione viene sempre eseguita.")
Eseguendo questo programma, l'output è:
Il numero è positivo. Questa istruzione viene sempre eseguita.
Nel programma menzionato, abbiamo inizializzato la costante number con il valore 10 e l'espressione di test number>0 restituisce true. Pertanto, la statement print("Number is positive.") all'interno del corpo dello if viene eseguita, che outputta:Il numero è positivo. Nel terminale.
Ora, modifica il valore di number a un intero negativo. Per esempio -5. Nei casi in cui l'output sarà:
Questa istruzione viene sempre eseguita.
Quando number viene inizializzato con il valore -5, il risultato dell'espressione di test number > 0 è false. Pertanto, il compilatore Swift salta l'esecuzione del corpo dell'istruzione if.
Se il valore dell'espressione if è true, viene eseguito il segmento di codice specifico dell'istruzione if. L'istruzione if può avere un'istruzione else opzionale. Se l'espressione di test è false, viene eseguito il codice del corpo dell'istruzione else.
La sintassi dell'istruzione if-else è:
if espressione { //语句 } else { //语句 {}
let number = 10 if number > 0 { print("Il numero è positivo.") } else { print("Il numero non è un numero positivo.") {} print("Questa istruzione viene sempre eseguita.")
Eseguendo questo programma, l'output è:
Il numero è positivo. Questa istruzione viene sempre eseguita.
Nel programma menzionato, la costante number è inizializzata con il valore 10 e l'espressione di test (number > 0) restituisce true. Pertanto, la statement print("Il numero è positivo.") all'interno del corpo dello if verrà eseguita.
Questo output : Il numero è positivo.Nel terminale, le istruzioni nel blocco else saranno saltate durante l'esecuzione.
Ora, cambia il valore di number a negativo. Supponiamo che sia -5. In questo caso, l'output sarà:
Il numero non è positivo. Questa istruzione viene sempre eseguita.
Quando number è -5, il risultato del calcolo dell'espressione di test number > 0 è false. In questo caso, viene eseguito il codice nel blocco else e saltato il codice nel blocco if.
Puoi anche usare in Swift:Operatore ternario Invece dell'espressione if..else, è una forma abbreviata dell'espressione if...else.
In Swift, è possibile eseguire un blocco di codice in molti punti del codice. Per questo, puoi usare la scala if..else..if:
La sintassi dell'espressione if-else-if è:
if expression1 {}} //语句 {} else if expression2 { //语句 {} else if expression3 { //语句 {} . . else { //语句 {}
Le espressioni if eseguono dal basso verso l'alto. Una volta che l'espressione di test è vera, il codice nel corpo dell'if viene eseguito. Poi, il controllo del programma salta oltre la scala if-else-if.
Se tutte le espressioni di test sono false, viene eseguito il codice nel blocco else.
Il seguente programma verifica se number è positivo, negativo o 0.
let number = 0; if number > 0 { print("Il numero è positivo.") {} else if (number < 0) { print("Il numero è negativo.") {} else { print("Il numero è 0.") {}
Eseguendo questo programma, l'output è:
Il numero è 0.
Nel programma sopra, la costante number è inizializzata con il valore 0. Poiché l'if esegue le istruzioni dall'alto in basso, controlla in primo luogo se number > 0, che viene calcolato come false.
Poi, controlla l'espressione successiva number < 0, il cui risultato è anche false.
Di conseguenza, print("Il numero è 0.") eseguirà le istruzioni nel blocco else, che vengono visualizzate nel terminale.Il numero è 0.
In Swift, le espressioni if..else possono contenere altre espressioni if..else. Queste si chiamano espressioni if...else annidate.
Puoi anche usare in Swift:switchSostituire l'if-else condizionale annidato, che a volte può essere un metodo più semplice quando si gestiscono diverse opzioni possibili.
La sintassi dell'if-else condizionale annidato è:
if expression1 {}} if expression2 { //语句 } else { //语句 {} {} else { if expression3 { //语句 } else { //语句 {} {}
这是一个使用嵌套if语句查找3个数字中最大数字的程序。
let n1 = -1.0, n2 = 4.5, n3 = -5.3 if n1 >= n2 { if n1 >= n3 { print("最大的数字是", n1) {} else { print("最大的数字是", n3) {} {} else { if n2 >= n3 { print("最大的数字是", n2) {} else { print("最大的数字是", n3) {} {}
当您运行上述程序时,输出将是:
最大的数字是4.5