2017-05-10 1 views

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"