objective-c - NSMutableArray 中的 NSMutableDictionary

标签 objective-c nsmutablearray nsmutabledictionary

我有 NSMutableArray 填充了 NSMutableDictionary 对象,我如何检索 NSMutableArray 中的第二项并更改该字典。

NSMutableArray *tempArr = [[NSMutableArray alloc]init];
NSMutableDictionary *al = [[NSMutableDictionary alloc]init];

for(int i=0; i<[theArray count]; i++) {
    id object = [theArray objectAtIndex: i];
    id object2 = @"0";
    [al  setObject:object forKey:@"titles"];
    [al setObject:object2 forKey:@"levels"];
    [tempArr addObject:al];
}


NSLog(@"fubar %@", [tempArr objectAtIndex:2]);

所以我需要通过 Key 访问 NSDictionary 并更改 Key 的值。谢谢

最佳答案

正如您所发现的,可以使用 NSArray 上的 -objectAtIndex: 方法来访问数组中的对象。

类似地,字典中的对象可以使用 NSDictionary 上的 -objectForKey: 进行访问。

要执行您想要的操作,只需像任何其他调用一样堆叠访问,如下所示:

NSLog(@"fubar %@", [[tempArr objectAtIndex:2] objectForKey:@"titles"]);

请注意,NSArray 上的索引从 0 开始,而不是 1。

要更改值,适用相同的原则:

[[tmpArr objectAtIndex:2] setObject:titlesArray forKey:@"titles"];

关于objective-c - NSMutableArray 中的 NSMutableDictionary,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19490280/

相关文章:

objective-c - 获取 UIView 中的所有对象?

swift - 如何对字符串日期数组进行排序

ios - 如何比较两个 NSMutableArray?

iphone - plist段控制保存问题

ios - 如何删除NSUserDefaults内部的NSMutableDictionary内部的对象

ios - NSDictionary 释放触发 valueForKey 返回值释放

objective-c - 如何组合 SKTextures

iphone - 在没有 UITabBarController 的情况下从 UITabBar 中删除选项卡

ios - 检测插页式广告是否正在展示

iOS 指向指针 NSMutableDictionary 的指针