Swift 将 Int[] 转换为 Int 变量

0 arrays iphone type-conversion ios swift

使用 Swift 3 我得到了一个从数字和反转创建的 Int 数组

var rev:String = String(number)
var pro:String = String(rev.characters.reversed())

var myArr = rev.characters.flatMap{Int(String($0))}
myArr = myArr.sorted { $1 < $0 }
Run Code Online (Sandbox Code Playgroud)

现在我想要

var myResult = all numbers from array in one variable
Run Code Online (Sandbox Code Playgroud)

让我们说

myArr = [1,2,3,4]
// And i want to myResult = 1234
Run Code Online (Sandbox Code Playgroud)

或者,如果有其他方法可以反转数字,我的意思是普通的整数变量?

Mar*_*n R 5

可以通过简单的整数算术将十进制数字数组组合成一个数字:

let digits = [1, 2, 3, 4]
let result = digits.reduce(0, { $0 * 10 + $1 })
print(result) // 1234
Run Code Online (Sandbox Code Playgroud)

或者,如果有其他方法可以反转数字,我的意思是普通的整数变量?

为此,您不需要数组或字符串转换:

func reverse(_ n: Int) -> Int {
    var result = 0
    var n = n // A mutable copy of the given number
    while n > 0 {
        // Append last digit of `n` to `result`:
        result = 10 * result + n % 10  
        // Remove last digit from `n`:
        n /= 10
    }
    return result
}

print(reverse(12345)) // 54321
Run Code Online (Sandbox Code Playgroud)