【问题标题】:how to check if object is an array of objects如何检查对象是否是对象数组
【发布时间】:2016-09-30 12:46:10
【问题描述】:

我有一个像下面这样的对象,它是一个对象数组。

在 swift 语言中,我如何检查对象是否是对象数组?

 DefinitionList =  (
          {
                    accountNum =          {
                        isEditable = 1;
                        isRequired = 1;  
                    };

                    bAccountType =           {
                        isEditable = 1;
                        isRequired = 0;
                   },

        },                                
        {
                    accountNum =     {
                        isEditable = 1;
                        isRequired = 1;
                    };

                    bAccountType =       {
                        isEditable = 1;
                        isRequired = 0;
                    };
                },

                ..
                ..)

【问题讨论】:

  • 抱歉,如果你在解析这个,你不是已经定义了这个吗?如果您的数组中有一个或 多个 个对象,问题难道不是吗?

标签: arrays swift object


【解决方案1】:

通常我在 Swift 2 中使用它:

var  DefinitionList = NSObject?()

    DefinitionList = ["ciao" : "ciao"]

  //  DefinitionList = ["ciao"]

    guard DefinitionList != nil else {

        print("DefinitionList empty")

        return
    }

    guard ((DefinitionList as? Array<NSObject>) != nil)  else {

        print("I'm a Dictionary")
        return
    }

    print("I'm a Array")

斯威夫特 3

   var  DefinitionList : NSObject?

  //  DefinitionList = ["ciao" : "ciao"] as NSObject

      DefinitionList = ["ciao"] as NSObject

    guard DefinitionList != nil else {

        print("DefinitionList empty")

        return
    }

    guard ((DefinitionList as? Array<NSObject>) != nil)  else {

        print("I'm a Dictionary")
        return
    }

    print("I'm a Array")

【讨论】:

  • 我从 myFoundatitionObject 类型转换为不相关类型 Array 总是失败
【解决方案2】:

您可以在 Swift 语言中使用“is”运算符。

if objects is [AnyObject] {
    print("right, its array of objects!")
} else {
    print("no, its not an array of objects!")
}

希望对你有帮助

【讨论】:

  • 这个不起作用,因为我的对象数组是自定义基础对象,这抱怨“从.. 投射总是失败”
猜你喜欢
  • 2023-03-09
  • 2020-06-07
  • 1970-01-01
  • 1970-01-01
  • 2015-04-02
  • 2017-06-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多