NEW: Subscribe to Hacking with Swift+ and accelerate your learning! >>

Expressions conditionnelles

Parfois, vous souhaitez que le code ne soit exécuté que si une condition donnée est vraie et, en Swift, cela est principalement représenté par les instructions if etelse. Vous donnez à Swift une condition à vérifier, puis un bloc de code à exécuter si cette condition est vraie.

Vous pouvez également éventuellement écrire else et fournir un bloc de code à exécuter si la condition est fausse, ou même else if et avoir davantage de conditions. Un "bloc" de code est simplement un ensemble de lignes de code délimité par une accolade ouvrante - { - à son début et une accolade fermante - } - à sa fin.

Voici un exemple simple :

var action: String
var person = "hater"

if person == "hater" {
    action = "hate"
}

Ce code utilise l'opérateur == (égalité) introduit précédemment pour vérifier si la chaîne à l'intérieur de person est exactement équivalente à la chaîne "hater". Si c'est le cas, il définit la variable action sur "hate". Remarquez que les accolades ouvrantes et fermantes marquent le début et la fin du code qui sera exécuté si la condition est vraie.

Ajoutons les blocs else if et else :

var action: String
var person = "hater"

if person == "hater" {
    action = "hate"
} else if person == "player" {
    action = "play"
} else {
    action = "cruise"
}

Cela vérifiera chaque condition dans l'ordre, et un seul des blocs sera exécuté : une personne est soit haineuse, soit joueuse, soit autre chose.

Évaluation de plusieurs conditions

Vous pouvez demander à Swift d'évaluer autant de conditions que vous le souhaitez, mais elles doivent toutes être vraies pour que Swift exécute le bloc de code. Pour vérifier plusieurs conditions, utilisez l'opérateur && - cela signifie "et". Par exemple :

var action: String
var stayOutTooLate = true
var nothingInBrain = true

if stayOutTooLate && nothingInBrain {
    action = "cruise"
}

Parce que stayOutTooLate et nothingInBrain sont toutes les deux vraies, la condition entière est vraie et action se voit assigner la valeur "cruise". Swift utilise ce que l'on appelle un court-circuit d'évaluation (short-circuit evaluation) pour améliorer les performances : s'il évalue plusieurs choses qui doivent toutes être vraies, et que la première est fausse, il ne continue pas à évaluer le reste.

Chercher le contraire de la vérité

Cela peut sembler profondément philosophique, mais en réalité, c’est important : vous voulez parfois savoir si une condition n'est pas vraie, c’est-à-dire fausse. Vous pouvez faire cela avec l'opérateur ! (not) qui a été introduit plus tôt. Par exemple :

if !stayOutTooLate && !nothingInBrain {
    action = "cruise"
}

Cette fois, la variable action ne sera définie que si stayOutTooLate et nothingInBrain sont faux - le ! signifiant ici le contraire de vrai.

Hacking with Swift is sponsored by NSSpain

SPONSORED Announcing NSSpain 2020: Remote Edition! An online, continuous conference for iOS developers. We’ll start on Thursday and finish on Friday, with talks, activities, and lots of fun for 36 hours, non-stop. Sound good? Join us!

Find out more

Sponsor Hacking with Swift and reach the world's largest Swift community!

BUY OUR BOOKS
Buy Pro Swift Buy Swift Design Patterns Buy Testing Swift Buy Hacking with iOS Buy Swift Coding Challenges Buy Swift on Sundays Volume One Buy Server-Side Swift (Vapor Edition) Buy Advanced iOS Volume One Buy Advanced iOS Volume Two Buy Advanced iOS Volume Three Buy Hacking with watchOS Buy Hacking with tvOS Buy Hacking with macOS Buy Dive Into SpriteKit Buy Swift in Sixty Seconds Buy Objective-C for Swift Developers Buy Server-Side Swift (Kitura Edition) Buy Beyond Code

Was this page useful? Let us know!

Link copied to your pasteboard.