Comment transformer un tableau, par exemple [Int]
en une chaîne conservant des virgules entre les éléments? Si j'ai un tableau comme [1,2,3,4]
, je veux recevoir une chaîne comme "1, 2, 3, 4"
.Swift: Transformer le tableau en chaîne
-3
A
Répondre
3
Vous pouvez faire:
let string = array.map { String($0) }
.joined(separator: ", ")
Le map
appel convertit le tableau de nombres à un tableau de chaînes et le joined
les combine ensemble dans une seule chaîne avec le séparateur que vous voulez entre les chaînes individuelles.
Ou, si cela doit être présenté dans l'interface utilisateur le nombre pourrait exiger soit des points décimaux et/ou séparateurs de milliers, alors il vaut mieux montrer les résultats dans un format localisé en utilisant NumberFormatter
:
let array = [1001, 2001, 3001, 4001]
let formatter = NumberFormatter()
formatter.numberStyle = .decimal
let string = array.flatMap { formatter.string(for: $0) }
.joined(separator: ", ")
qui , pour les utilisateurs américains, entraînerait:
1.001, 2.001, 3.001, 4.001
Mais pour l'utilisateur allemand s, il en résulterait:
1,001, 2,001, 3,001, 4,001
1
Vous avez juste besoin de mapper vos entiers en chaînes et les rejoindre avec séparateur ", "
let array = [1,2,3,4]
let string = array.map(String.init).joined(separator: ", ") // "1, 2, 3, 4"