{
"base": "EUR",
"date": "2016-09-23",
"rates": {
"AUD": 1.4685,
"BGN": 1.9558,
"BRL": 3.5931,
"CAD": 1.4625
}
}
我有一个像这样的json,我试图获得费率,但得到了错误,我的代码如下:
let id = json["rates"] as? String
print("rates :" + id!)
我是新手,我想分别获得每个费率,有人可以帮助我吗?谢谢
答案 0 :(得分:0)
试试这个:
If let id = json["rates"] as? [String:AnyObject] {
print("rates :" + id)
}
答案 1 :(得分:0)
您可以按照下面提到的代码来获取各个值。
这里的速率是字典类型,因此所有值都可以通过其相应的键值(即AUD,BGN等,如此json["rates"]??["AUD"]
)获取,如我的代码所示。
我的代码:
let id = json["rates"]
print("rates : \(id)");
print("AUD = \(json["rates"]??["AUD"])");
print("BGN = \(json["rates"]??["BGN"])");
print("BRL = \(json["rates"]??["BRL"])");
print("CAD = \(json["rates"]??["CAD"])");
希望它有所帮助。
快乐的编码......
答案 2 :(得分:0)
您也可以这样做,它可以提供您字典中的多少费率。
if let rates = json["rates"] as? [String: AnyObject] {
for rate in rates {
let corresponsdingRate = rate.1 as? Float ?? 0.0
print("\(rate.0) = \(corresponsdingRate)")
}
}