【发布时间】:2014-07-04 07:38:30
【问题描述】:
我正在开发一个 iPad 应用程序。我有一个 NSMutableArray 和 NSMutableDictionary 。这两个都可以根据来自 Web 服务的数据进行更改。我需要根据 @987654324 从我的 NSMutableArray 中删除一些字典@ 值。这里我通过一个例子来说明情况:
testArray =[{ language :"ESP"},{language :"ENG"},{language :"ENG"},{language :"FRH"}];
我需要从测试数组中删除所有具有键值语言的字典:“ENG”。
我写过这样的代码:
for(int i =0;i<testArray.count;i++){
NSString *lang = [NSString stringWithFormat:@"%@", [testArray[i] objectForKey:@"language"]];
if([lang isEqualToString:@"ENG"]){
[testArray removeObjectAtIndex:i];
}
}
但它不起作用。我认为问题是当我从索引处删除字典时,数组计数也在减少,因此循环是根据新数组计数执行的。一些帮助我重写代码以获得确切答案?
【问题讨论】:
-
具体是什么不起作用?您是遇到异常还是只是您没有遍历所有值?
-
您在 NSLog 中得到的输出不是预期的
标签: ios objective-c