1: 值永远不会被隐式转换为其他类型。如果你需要把一个值转换成其他类型,请显式转换。
let label = "the width is"
let width = 95
let widthLabel = label + String(width)
print(widthLabel)
2:有一种更简单的把值转换成字符串的方法:把值写到括号中,并且在括号之前写一个反斜杠
let str1 = 90.0
let str2 = 90
let str = str1 + Double(str2)
let str3 = "niki 身高:"
print("\(str3) \(str)")
3:类型推断
如果表达式中同时出现了整数和浮点数,会被推断为 Double 类型:
let meaningOfLife = 42//被推测为 Int 类型
let pi = 3.14159 //被推测为 Double 类型
let anotherPi = 3 + 0.14159
// anotherPi 会被推测为 Double 类型
浮点数到整数的反向转换同样行,整数类型可以用 Double 或者 Float 类型来初始化:
let integerPi = Int(pi)
// integerPi 等于 3,所以被推测为 Int 类型
注意:当用这种方式来初始化一个新的整数值时,浮点值会被截断。也就是说 4.75 会变成 4 , -3.9 会变成 -3 。