1、AnyObject :代表任何class类型的对象实例。
//狗
class Dog {
}
//猪
class Pig {
}
let dog = Dog()
let pig = Pig()
var arr: [AnyObject] = [dog, pig]
for animal in arr {
if let d = animal as? Dog {
print("这是只狗")
}else if let p = animal as? Pig {
print("这是只猪")
}
}
2、Any :范围更广,代表除函数外任何类型的实例。
let dog = Dog()
let pig = Pig()
var arr: [Any] = [Any]()
arr.append(20)
arr.append(dog)
arr.append("dog")
arr.append(pig)
for any in arr {
switch any {
case let any as Int:
print("这是个Int类型")
case let any as String:
print("这是个String类型")
case let any as Dog:
print("这是只狗")
case let any as Pig:
print("这是只猪")
default:
print("这是个未知类型")
}
}
原文出自:www.hangge.com
网友评论