在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
1.Objective-C 中常用的判断一个对象是属于哪个类的方法有下面两类: [obj1 isKindOfClass:[ClassA class]]; [obj2 isMemberOfClass:[ClassB class]]; 结论:
在 Swift 中如果写的是 class ClassA: NSObject { } class ClassB: ClassA { } let obj1: NSObject = ClassB() let obj2: NSObject = ClassB() obj1.isKindOfClass(ClassA.self) // true obj2.isMemberOfClass(ClassA.self) // false 2.在 Swift 中提供了一个更简洁的写法:对于一个不确定的类型,我们可以使用 class ClassA { } class ClassB: ClassA { } let obj: AnyObject = ClassB() if (obj is ClassA) { print("obj 属于 ClassA") } if (obj is ClassB) { print("obj 属于 ClassB") } 另外,编译器将对这种检查进行必要性的判断:如果编译器能够唯一确定类型,那么 let string = "String" if string is String { // }
by:liming
|
请发表评论