У меня есть пользовательский объект:Как распечатать пользовательские значения объектов JSON после их загрузки?
class SampleJSON {
var costDictionary: [String: Any]
var airbnbDetails: [String: Any]
var airbnbUS: Int
var airbnbLocal: Int
init(costDictionary: [String: Any], airbnbDetails: [String: Any], airbnbUS: Int, airbnbLocal: Int){
self.costDictionary = costDictionary
self.airbnbDetails = airbnbDetails
self.airbnbUS = airbnbUS
self.airbnbLocal = airbnbLocal
}
init(resultsDictionary:[String: Any]){
costDictionary = (resultsDictionary["cost"] as? [String: Any])!
airbnbDetails = (costDictionary["airbnb_median"] as? [String: Any])!
airbnbUS = (airbnbDetails["USD"] as? Int)!
airbnbLocal = (airbnbDetails["CHF"] as? Int)!
}
Я пытаюсь распечатать значение объектов после того, как они были загружены:
static func downloadAllTableViewData(urlExtension:String) -> [SampleJSON] {
var sampleJSON = [SampleJSON]()//array of custom object
let usm = UrlSessionNetworkManager.sharedManager
if let jsonDictionary = usm.parseJSONFromData(urlExtension:urlExtension)
{
let resultDictionaries = jsonDictionary["result"] as! [[String : Any]]
for resultsDictionary in resultDictionaries {// enumerate through dictionary
let nomadInfo = SampleJSON(resultsDictionary: resultsDictionary)
sampleJSON.append(nomadInfo)
}
} else {
print("Error: Cannot retrieve JSON Data")
}
print(sampleJSON) //Print Data here
return sampleJSON
}
}
Я пытаюсь напечатать все значения пользовательского объекта, но когда я пытаюсь использовать печать (sampleJSON) все я получаю распечатываются на консоли
MyProject.SampleJSON
Любая помощь приветствуется!
Я думаю, вы должны напечатать 'resultsDictionary' вместо этого перед' init' вашего собственного класса. – JuicyFruit