整数和浮点转换
整数和浮点数字类型之间的转换必须显式:
let three = 3
let pointOneFourOneFiveNine = 0.14159
let pi = Double(three) + pointOneFourOneFiveNine
// pi equals 3.14159, and is inferred to be of type Double
这里,常量3的值用于创建类型Double的新值,以使加法的两侧具有相同的类型。 如果不进行此转换,则不允许将这两个常量相加。
浮点到整数转换也必须显式。 整数类型可以使用Double或Float值初始化:
let integerPi = Int(pi)
// integerPi equals 3, and is inferred to be of type Int
当以这种方式初始化新的整数值时,浮点值总是被截断。 这意味着4.75变为4,-3.9变为-3。
类型别名
类型别名定义现有类型的备用名称。 您可以使用typealias关键字定义类型别名。
typealias AudioSample = UInt16
定义类型别名后,您可以在可能使用原始名称的任何位置使用别名:
var maxAmplitudeFound = AudioSample.min
// maxAmplitudeFound is now 0
这里,AudioSample定义为UInt16的别名。 因为它是一个别名,所以对AudioSample.min的调用实际上调用了UInt16.min,它为maxAmplitudeFound变量提供了一个初始值0。