如何将Array<Int>
([1,2,3,4]
)转换为常规Int
(1234
)?我可以采用另一种方法(将Int
分解为单个数字),但是我不知道如何组合数组以使数字组成新数字的数字。
最佳答案
这将起作用:
let digits = [1,2,3,4]
let intValue = digits.reduce(0, combine: {$0*10 + $1})
对于Swift 4+:
let digits = [1,2,3,4]
let intValue = digits.reduce(0, {$0*10 + $1})
或在更多版本的Swift中进行编译:
(感谢Romulo BM。)
let digits = [1,2,3,4]
let intValue = digits.reduce(0) { return $0*10 + $1 }
注意
该答案假定输入数组中包含的所有Ints都是数字-0 ... 9。除此之外,例如,如果您要将
[1,2,3,4, 56]
转换为Int 123456
,则需要其他方法。关于arrays - 连接Int的Swift数组以创建新的Int,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38165569/