我试图弄清楚如何在Swift中将Int转换为字符串。

我想出了一个解决方案,使用NSNumber,但我想弄清楚如何在Swift中做到这一切。

let x : Int = 45
let xNSNumber = x as NSNumber
let xString : String = xNSNumber.stringValue

当前回答

这里有4种方法:

var x = 34
var s = String(x)
var ss = "\(x)"
var sss = toString(x)
var ssss = x.description

我可以想象有些人会有一个问题与ss。但如果你正在寻找一个包含其他内容的字符串,那么为什么不呢。

其他回答

let intAsString = 45.description     // "45"
let stringAsInt = Int("45")          // 45

我正在使用这个简单的方法

字符串到Int:

 var a = Int()
var string1 = String("1")
a = string1.toInt()

和从Int到String:

var a = Int()
a = 1
var string1 = String()
 string1= "\(a)"

斯威夫特2:

var num1 = 4
var numString = "56"
var sum2 = String(num1) + numString
var sum3 = Int(numString)

为了在将来节省你的时间和麻烦,你可以做一个Int扩展。通常我会创建一个共享代码文件,在其中放置扩展名、枚举和其他有趣的东西。下面是扩展代码的样子:

extension Int
{
    func toString() -> String
    {
        var myString = String(self)
        return myString
    }
}

之后,当你想将int型转换为字符串时,你可以这样做:

var myNumber = 0
var myNumberAsString = myNumber.toString()

在Swift 3.0中:

var value: Int = 10
var string = String(describing: value)