【发布时间】:2016-02-16 18:27:12
【问题描述】:
我正在从 parse 导入一个数组,我想将该数组添加到一个数组数组中,但是当应用程序尝试附加导入的数组时会崩溃。为什么会发生这种情况,我该如何解决?崩溃错误是Thread 1: EXC_BAD_INSTRUCTION(code=EXC_I386_INVOP, subcode=0x0 我注释了附加行并且它没有崩溃,所以它必须是那一行。
var animalarray: [[String]] = []
let query = PFQuery(className: "animals")
query.findObjectsInBackgroundWithBlock { (objects: [PFObject]?, error: NSError?) -> Void in
if error == nil{
for object in objects!{
if let animalss = object["CoordinateTest"]{
print("coord \(animalss)")
self.animalarray.append(animalss as! [String])//crashes here
}
}
}
}
【问题讨论】:
-
print("coord \(animalss)")行的日志中显示了什么? -
coord ( "dog", "cat") -
如果我不得不猜测,
animalss实际上并不是一个字符串数组,并且您的强制转换导致了崩溃。 -
很好地解析它的字符串数组。
-
一般来说你应该避免强制转换,我建议你将
as? [String]添加到if行,并在else块中检查为什么它没有被正确地转换。这可能不是您问题的解决方案,但可能会帮助您缩小问题范围。
标签: ios arrays swift parse-platform