0
首先,當我創建了一個自定義類:「價值型‘AnyObject’沒有成員。」 ..錯誤發生試圖給值對象數組中的斯威夫特
class TVInfo {
var cast : [String]
var name : String
var charecterName : String
init (cast: [String], name: String, charecterName: String){
self.cast = cast
self.name = name
self.charecterName = charecterName
}
}
然後我試着解析JSON數據
let jsonResult = try NSJSONSerialization.JSONObjectWithData(data!, options: .MutableContainers) as!
NSDictionary
let cast = jsonResult.objectForKey("cast") as! NSArray
for item in cast
{
let name = item["name"] as! String
let charecterName = item["character_name"] as! String
}
let TV = TVInfo(cast: cast as! [String], name: cast[0].name, charecterName: cast[0].charecterName)
但我不斷收到錯誤「類型'AnyObject'的值沒有成員'charecterName'」。這很奇怪,因爲第一個常量 - 「名稱」似乎有值,但它與「characterName」在同一個數組中。我怎樣才能正確地賦予characterName常量值?
感謝您的快速答覆,但還有比我張貼這就是爲什麼我有「中投」設置爲陣列的那些更多的常量。例如: let network = jsonResult [「network」] as! String let cast = jsonResult.objectForKey(「cast」)as! NSArray 鑄件中的物品 { let name = item [「name」] as!字符串 讓charecterName = jsonResult [「character_name」] as!字符串 } 讓overview = jsonResult [「overview」] as!字符串所以我不確定你提出的方法是否有效。 – user5005376
您的重複循環無用,因爲'name'和'charecterName'的作用域被限制在大括號內。變量不能在循環外部訪問。並且編譯器不知道'cast [0]'是什麼類型「 – vadian
我的意思是說item [」character_name「] as!串。爲什麼我可以提取名稱的數據而不是字符名? – user5005376