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

String interpolation (Interpolation de chaîne de caractères)

C'est un nom sophistiqué pour une chose qui est en réalité très simple : combiner des variables et des constantes dans une chaîne de caractères (String).

Effacez tout le code que vous venez d'écrire et ne laissez que ceci :

var name = "Tim McGraw"

Si nous voulons afficher un message à l'utilisateur contenant son nom, l'interpolation de chaîne de caractères nous facilite les choses : vous écrivez simplement une barre oblique inverse (appelée aussi antislash ou backslash), puis vous ouvrez une parenthèse, insérez votre code, puis refermez la parenthèse, comme ceci :

var name = "Tim McGraw"
"Your name is \(name)"

Le volet des résultats affiche désormais "Your name is Tim McGraw" sous la forme d'une seule chaîne : l'interpolation de chaîne de caractères les a combinées pour nous.

Il est vrai que nous aurions pu écrire cela en utilisant l'opérateur +, comme ceci :

var name = "Tim McGraw"
"Your name is " + name

…mais ce n'est pas aussi efficace, surtout si vous combinez plusieurs variables. En outre, l'interpolation de chaîne de caractères dans Swift est suffisamment intelligente pour pouvoir traiter automatiquement différents types de données. Par exemple :

var name = "Tim McGraw"
var age = 25
var latitude = 36.166667

"Your name is \(name), your age is \(age), and your latitude is \(latitude)"

Faire cela en utilisant + est beaucoup plus difficile, car Swift ne vous permet pas d'ajouter des entiers et des doubles à une chaîne de caractères.

À ce stade, votre résultat ne rentrera peut-être plus dans le volet de droite. Vous devez donc redimensionner la fenêtre ou survoler le résultat et cliquer sur le bouton + qui apparaît pour l’afficher sous votre ligne de code.

L'une des fonctionnalités puissantes de l'interpolation de chaîne de caractères est que tout ce qui est entre \( et ) peut en réalité être une expression complète en Swift. Par exemple, vous pouvez y faire des mathématiques en utilisant des opérateurs, comme ceci :

var age = 25
"You are \(age) years old. In another \(age) years you will be \(age * 2)."
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.