/ / Swift: Zmeňte pole na reťazec [duplikát] - ios, rýchly, kakaový dotyk, základ

Swift: Otočte pole do reťazca [duplicate] - ios, rýchly, kakaový dotyk, základ

Ako napríklad otočím pole [Int] do reťazca, ktorý udržiava čiarky medzi prvkami? Ak mám pole ako [1,2,3,4], Chcem dostávať reťazec ako "1, 2, 3, 4".

odpovede:

3 pre odpoveď č. 1

Môžete robiť:

let string = array.map { String($0) }
.joined(separator: ", ")

Na map Hovor prevádza pole čísel na pole reťazcov a joined kombinuje ich do jedného reťazca s akýmkoľvek oddeľovačom, ktorý chcete medzi jednotlivými reťazcami.

Alebo, ak sa to má uviesť v používateľskom rozhraní, čísla môžu vyžadovať oddeľovače desatinných miest alebo tisíce, potom je lepšie ukázať výsledky v lokalizovanom formáte pomocou NumberFormatter:

let array = [1.0, 1.1, 1.2, 1.3]
let formatter = NumberFormatter()
formatter.numberStyle = .decimal
formatter.maximumFractionDigits = 2
formatter.minimumFractionDigits = 2

let string = array.compactMap { formatter.string(for: $0) }
.joined(separator: ", ")

To by pre používateľov v USA viedlo k:

1.00, 1.10, 1.20, 1.30

Pre nemeckých používateľov by to malo za následok:

1,00, 1,10, 1,20, 1,30


2 pre odpoveď č. 2

Stačí zmapovať celé čísla do reťazcov a spojiť ich s oddeľovačom ", "

let array = [1,2,3,4]
let string = array.map(String.init).joined(separator: ", ")   //  "1, 2, 3, 4"