Avec Swift 5, vous pouvez choisir l'un des trois exemples ci-dessous pour résoudre votre problème.
#1. Utilisation de String
l' init(format:_:)
initialiseur de
Foundation
fournit à Swift String
un init(format:_:)
initialiseur. init(format:_:)
a la déclaration suivante:
init(format: String, _ arguments: CVarArg...)
Renvoie un String
objet initialisé en utilisant une chaîne de format donnée comme modèle dans lequel les valeurs d'argument restantes sont substituées.
Le code Playground suivant montre comment créer un String
formaté à partir Int
d'au moins deux chiffres entiers à l'aide de init(format:_:)
:
import Foundation
let string0 = String(format: "%02d", 0) // returns "00"
let string1 = String(format: "%02d", 1) // returns "01"
let string2 = String(format: "%02d", 10) // returns "10"
let string3 = String(format: "%02d", 100) // returns "100"
# 2. Utilisation de String
l' init(format:arguments:)
initialiseur de
Foundation
fournit à Swift String
un init(format:arguments:)
initialiseur. init(format:arguments:)
a la déclaration suivante:
init(format: String, arguments: [CVarArg])
Renvoie un String
objet initialisé en utilisant une chaîne de format donnée comme modèle dans lequel les valeurs d'argument restantes sont substituées en fonction des paramètres régionaux par défaut de l'utilisateur.
Le code Playground suivant montre comment créer un String
formaté à partir Int
d'au moins deux chiffres entiers à l'aide de init(format:arguments:)
:
import Foundation
let string0 = String(format: "%02d", arguments: [0]) // returns "00"
let string1 = String(format: "%02d", arguments: [1]) // returns "01"
let string2 = String(format: "%02d", arguments: [10]) // returns "10"
let string3 = String(format: "%02d", arguments: [100]) // returns "100"
# 3. En utilisantNumberFormatter
Fondation fournit NumberFormatter
. Apple déclare à ce sujet:
Les instances de NSNumberFormatter
formatage de la représentation textuelle des cellules qui contiennent des NSNumber
objets et convertissent les représentations textuelles des valeurs numériques en NSNumber
objets. La représentation comprend des entiers, des flottants et des doubles; les flottants et les doubles peuvent être formatés à une position décimale spécifiée.
Le code Playground suivant montre comment créer un NumberFormatter
qui renvoie String?
un Int
avec au moins deux chiffres entiers:
import Foundation
let formatter = NumberFormatter()
formatter.minimumIntegerDigits = 2
let optionalString0 = formatter.string(from: 0) // returns Optional("00")
let optionalString1 = formatter.string(from: 1) // returns Optional("01")
let optionalString2 = formatter.string(from: 10) // returns Optional("10")
let optionalString3 = formatter.string(from: 100) // returns Optional("100")