类型转化
常见的类型转化符号
- is:用于判断一个实例是否是某一种类型
- as:将实例转成某一种类型
例子
// 1.定义数组
let array : [AnyObjiect] = [12, "why", 1.88]
// 2.取出数组中的第一个元素
let objc = array.first
// 3.判断第一个元素是否是一个Int类型
if objc is Int {
print("是Int类型")
} else {
print("不是Int类型")
}
// 4.将objc转成真正的类型来使用
// 4.1.as? 将AnyObject转成可选类型,通过判断可选类型是否有值,来决定是否转化成功
let age = objc as? Int
print(age) // 结果:Optional(12)
// 4.2.as! 将AnyObject转成具体类型,但是注意:如果不是该类型,那么程序会崩溃,所以慎重使用
let age1 = objc as! Int
print(age1) // 结果:12