在Swift中使用toString vs String

在Swift中使用toString vs String,string,swift,tostring,String,Swift,Tostring,我希望有人能为我澄清一下Swift中toString()和String()之间是否有区别 示例: var myInteger: Int myInteger = 9 let myString1 = "I like to play " + toString(myInteger) + "-ball pool" let myString2 = "I like to play " + String(myInteger) + "-ball pool" 您给出的示例没有区别,因为String有一个构造函

我希望有人能为我澄清一下Swift中toString()和String()之间是否有区别

示例:

var myInteger: Int
myInteger = 9

let myString1 = "I like to play " + toString(myInteger) + "-ball pool"

let myString2 = "I like to play " + String(myInteger) + "-ball pool"

您给出的示例没有区别,因为
String
有一个构造函数,它将接受
Int
。(
String(…)
String
类型的构造函数,不是函数。)使用
Double
进行尝试,您将得到一个编译器错误

toString()
,但是,它可以接受任何类型的实例-它的泛型参数没有约束。它本质上与使用字符串插值将实例转换为字符串相同,但采用函数形式:

**Swift 3**
let myNumber = 3.3
let myNumberString = String(myNumber)
let myInterpolatedString = "\(myNumber)"
// both are "3.3"