关键词:Swift类型判断, is, isKindof, isMemberof, typeof
类型判断
is
用于任意类型判断,可以是数值类型,也可以是对象。用于对象时,类似isKindof
let name = 1234
if name is Int {
print("用is判断类型Int")
}
let dog = Dog()
if dog is Dog {
print("用is判断同类")
}
isKindof
只能用于判断对象,类型必须是 AnyObject。
判断是同类,或者是其子类。
let dog1: AnyObject = Dog()
if dog1.isKind(of: Dog.self) {
print("用isKind判断同类")
}
if dog1.isKind(of: Animal.self) {
print("用isKind判断父类")
}
isMemberof
只判断同类,如果是其子类,会返回false。
let dog2: AnyObject = Dog()
if dog2.isMember(of: Dog.self) {
print("用isMember判断同类")
}
if dog2.isMember(of: Animal.self) {
print("用isMember判断父类,这里不会执行")
}
typeof
只判断同类,如果是其子类,会返回false。
let dog3 = Dog()
if type(of: dog3) == Dog.self {
print("用typeof判断同类")
}
if type(of: dog3) == Animal.self {
print("用typeof判断父类,这里不会执行")
}
PREVIOUSChrome报错 您的连接不是私密连接
NEXT制作一个快速关机的小工具