类型别名就是给一个类型定义的一个小名。通过 typealias 关键字进行定义。
类型别名是非常有用的,特别是一个非常有意义的名称时。
比如,处理特定大小的外部来源的数据:
typealias AudioSample = UInt16
一旦你定义一个类型别名,你可以在任何地方使用别名来替代原来的名称:
var maxAmplitudeFound = AudioSample.min
maxAmplitudeFound++
print(maxAmplitudeFound)
本例中,AudioSample 被定义为 UInt16 的一个别名。
所以,AudioSample.min 实际上是 UInt16.min ,所以 maxAmplitudeFound 的初值是0。
打印结果是1
Swift 有一个基本的类型: 布尔型(Bool)。
布尔值是逻辑值,他们只能是真或假。
Swift 提供了两个布尔常量值:true,false:
let orangesAreOrange = true
let turnipsAreDelicious = false
orangesAreOrange 和 turnipsAreDelicious 的类型会被推测为 Bool 型,
因为它们的初值是布尔字面量。
就像 Int 和 Double 一样,在创建变量并赋值 true 和 false的时候,
就不需要显示的声明为 Boolean 型了。
编译器会自动推测出变量的类型,所以 Swift 代码更加高效,可读性更强。
当你编写条件语句的时候,比如 if ,Boolean 是非常重要的
if turnipsAreDelicious {
print("yes,it is right")
} else {
print("no! it is wrong")
}
Swfit 类型安全检查会阻止非 Boolean 类型的值用在 Boolean 的地方。
也就是不能用整数来对Bool类型赋值,
如他会报错 Type 'Int' dose not conform to protocol 'BooleanType'
let i = 1
if i {
}
然而 下面的是可以的
let i=1
if i==1 {
print("yes,it is same")
}
i == 1 表达式的结果是 Boolean 型的,所以可以通过类型安全检查。
和 Swift 的其他类型安全的例子一样,这个方法可以避免错误并保证这块代码的意图是清晰的。