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

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

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

当前回答

如果你喜欢快速扩展,你可以添加以下代码

extension Int
{
    var string:String {
        get {
            return String(self)
        }
    }
}

然后,您可以通过刚才添加的方法获取字符串

var x = 1234
var s = x.string

其他回答

在swift 3.0中,您可以将整数更改为字符串,如下所示

let a:String = String(stringInterpolationSegment: 15)

另一种方法是

let number: Int = 15
let _numberInStringFormate: String = String(number)

//或任何整数来代替15

为了完整起见,你还可以使用:

let x = 10.description

或支持描述的任何其他值。

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

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

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

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

斯威夫特4:

let x:Int = 45
let str:String = String(describing: x)

开发者。Apple.com >字符集init(describing:)

String(description:)初始化式是将任何类型的实例转换为字符串的首选方法。

自定义字符串转换

不管出于什么原因,这个公认的答案对我不起作用。我采用了这样的方法:

var myInt:Int = 10
var myString:String = toString(myInt)