2016-03-25 3 views
-4

Как можно преобразовать следующую строку в целочисленный массив?Как преобразовать строку целых чисел в массив int?

"1,2,3,4,5" 
+0

Я не думаю, что вы можете. –

+0

Generic Algorithm: разделите строку на запятую - это приведет к массиву строк. Преобразование массива строк в массив из int. Реализация: просто сделайте это; может иметь полезный ответ .. – user2864740

ответ

7

Xcode 8.3.1 • Swift 3.1

Вы можете использовать метод componentsSeparatedByString для преобразования строки в массив и использовать flatMap, чтобы преобразовать его в Int:

let str = "1,2,3,4,5" 
let arr = str.components(separatedBy: ",").flatMap{Int($0)} 

print(arr) // "[1, 2, 3, 4, 5]\n" 

Если ваш строка содержит пробелы, и вы можете обрезать ее с помощью stringByTrimmingCharactersInSet перед преобразованием в Int:

let str = "1, 2, 3, 4, 5 " 
let numbers = str.components(separatedBy: ",") 
    .flatMap{ Int($0.trimmingCharacters(in: .whitespaces)) } 

print(numbers) // "[1, 2, 3, 4, 5]\n" 
+0

Прямо на! Благодарю. – 4thSpace

+0

@ 4thSpace приветствуется –

Смежные вопросы