如何将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/

10-11 22:01