ios - 在 swift 2 中调用和打印对象内部的对象

标签 ios swift2

我有 2 个类,我在 AnimalClass 中有猫对象,我正在解析 jSON,我想从 jSON 初始化猫的名字

class AnimalClass: NSObject {

    var cats = [catClass]()
    ..... 
}

class catClass: NSObject {

var name : String = ""

init(data : NSDictionary)
{
    if let add = data["name"] as? String
    {
        self.name = add
    }

这里我尝试在 ViewController.swift 中初始化它

    var animals = [AnimalClass]()
for(var i = 0; i < data_array.count; i++)
{
    if let add = data_array[i] as? NSDictionary
    {
      self.animals.append(AnimalClass(data: add)) // this works
      self.animals.cats.append(AnimalClass(data: add)) // this doesn't work
    }
}

我的问题是关于这一行 self.animals.cats.append(AnimalClass(data: add)) 如何附加到 AnimalClass 中的猫对象。

最佳答案

您不能将 AnimalClass 附加到猫,因为猫是 catClass 对象的数组。你是这样声明的:

var cats = [catClass]()

这就是为什么下面的代码不起作用的原因。

self.animals.cats.append(AnimalClass(data: add))

所以你应该把它改成:

  self.animals.cats.append(catClass(data: add))

此外,Swift 中的类名应该以大写字母开头,我建议您将 catClass 重命名为 Cat(同时删除 Class 后缀)

关于ios - 在 swift 2 中调用和打印对象内部的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35855339/

相关文章:

ios - 如何在没有 CaptiveNetwork 弃用框架的情况下在 Swift 2.0 中获取 ssid?

ios - Openssl iOS 缓冲区限制

ios - IOS 是否支持同时 wifi 和 3g/4g 连接?

ios - 越狱调整中架构armv6的 undefined symbol

Swift 2.0 如何将字符串数组转换为整型数组

ios - swift 2 : Issue when initializing a UIActivityViewController in Swift: Type of expression is ambiguous without more context

ios - 打开网址 : deprecated in iOS 10

ios - 如何在导航 View Controller 时获取当前正在运行的 NSURLSession 后台 session ?

ios - 如何正确使用面向对象语言 Swift?

swift - 其 View 不在窗口层次结构中的 UIAlertController