繁体   English   中英

目标 c - NSDictionary 到 NSArray

[英]objective c - NSDictionary to NSArray

我有 NSDictionary *jsonDict2 数据结构如下所示:

{"success":true,"terms":"https://currencylayer.com/terms","privacy":"https://currencylayer.com/privacy","timestamp":1446762908,"source":" USD","quotes":{"USDAED":3.67295,"USDAFN":65.059998,"USDALL":127.794502,"USDAMD":476.320007,"USDANG":1.790285,"USDAOA":1395"5998,"USDAOA":1395"5.20"

我需要用它来填充一个数组 - 我正在使用以下代码执行此操作:

NSArray *CurrencyArray = [jsonDict2 objectForKey:@"quotes"];

填充一个数组:USDAED = "3.67295"; USDAFN = "65.05999799999999"; USDALL = "127.794502"; USDAMD = "476.320007"; USDANG = "1.790285"; USDAOA = "135.210495";

但我不想要数组中的值(仅例如:USDAED;USDAFN;USDALL...)

一旦我拥有该数组,那么我需要一些东西来提取该数组中选择的特定值。 例如,对于数组值 USDANG,我需要从 *jsonDict2 字典中提取它的值(我将使用选择器来选择数组中的值,字典中的值将显示在标签中)

你需要仔细注意你的类型。

“quotes”的值不是数组,而是另一本字典。

如果只想将字典的键提取为数组,请使用 allKeys 方法。 要仅将字典的值提取为数组,请使用 allValues 方法。

“quotes”是字典,而不是数组

如果你想得到 NSArray,你必须手动转换它

NSMutableArray *CurrencyArray = [NSMutableArray array];
NSMutableArray *CurrencyValueArray = [NSMutableArray array];
NSDictionary *CurrencyDict = [jsonDict2 objectForKey:@"quotes"];
for (NSString *key in CurrencyDict) {
    [CurrencyArray addObject:key];
    [CurrencyValueArray addObject:[CurrencyDict valueForKey:key]];
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM