Swift类型判断

作者: 冷武橘 | 来源:发表于2020-04-14 17:54 被阅读0次

一、isKind和isMember

class Animal {}
class Dog:Animal{}
var animal:AnyObject = Animal()
if animal .isKind(of: Animal.self){
   print("动物类")
}
animal = Dog()
if animal.isKind(of: Animal.self){
     print("动物类")
}
if animal.isMember(of: Animal.self){
    print("狗类")
}else{
  print("非狗类")
}
  • isKind和isMember属于oc的方法,类型必须是AnyObject 类型的(可以转换成NSObject的类)
  • isKindof:判断其类型是同类或者其子类
  • .isMembeof:判断其类型只是同类,如果是子类返回为true

二、is

swift的类型判断方法,如果实例是同类型或者其同类型的子类返回为true,类似isKindof

import UIKit
class Animal {}
class Dog:Animal{}
var animal:Any = Animal()
if animal is Animal {
   print("动物类")
}
animal = Dog()
if animal is Animal {
   print("狗也是动物")
}

相关文章

  • Swift 基础笔记 - 枚举

    枚举 OC定义和使用枚举 Swift定义枚举类型 Swift判断枚举类型 枚举成员类型

  • 【Swift】判断类型

    在OC中我们判断类型是通过 方法进行判断类型的,而在Swift3中判断类型的方法为: 使用方法:判断subView...

  • swift 类型判断

    类型判断 Objective-C中判断类型 由于isKindOfClass和'isMemberOfClass' 均...

  • Swift 判断类型

  • Swift类型判断

    五种方式进行类型判断 继承 NSObject 利用runtime获取类 let url = NSURL() le...

  • Swift类型判断

    一、isKind和isMember isKind和isMember属于oc的方法,类型必须是AnyObject 类...

  • 类型转换

    Swift 语言类型转换可以判断实例的类型。也可以用于检测实例类型是否属于其父类或者子类的实例。Swift 中类型...

  • Swift:基础(二十八)类型转换

    Swift 类型转换 Swift 语言类型转换可以判断实例的类型。也可以用于检测实例类型是否属于其父类或者子类的实...

  • iOS swift 学习(四)

    Swift 类型转换Swift 语言类型转换可以判断实例的类型。也可以用于检测实例类型是否属于其父类或者子类的实例...

  • Swift 之类型转换

    Swift 语言类型转换可以判断实例的类型。也可以用于检测实例类型是否属于其父类或者子类的实例。Swift 中类型...

网友评论

    本文标题:Swift类型判断

    本文链接:https://www.haomeiwen.com/subject/qpntvhtx.html