【发布时间】:2013-09-12 10:40:30
【问题描述】:
我还在边做边学,所以,如果这听起来像个菜鸟问题,那可能就是这样。
我正在尝试遍历 NSDictionary(消息)并获取某个键上的值。
当我运行此代码时,我收到以下错误“* Terminating app due to unaught exception 'NSRangeException', reason: '* -[__NSArrayI objectAtIndex:]: index 4 beyond bounds [0 . . 3]'"
NSArray* keys = [messages allKeys];
int count = [keys count] ;
for (int i=0; i < count; i++) {
for(NSString* key in keys) {
if ([key isEqualToString:@"messagesinconversation"]) {
NSArray* arr = [messages objectForKey:key];
NSString *sentby = [[arr valueForKey:@"sentby"] objectAtIndex:i];
NSLog (@"%@", sentby);
}
}
}
有人能指出我正确的方向吗?
【问题讨论】:
-
应该是你的 for 语句循环的问题....[for (int i=0; i
-
为什么
[[arr valueForKey:@"sentby"] objectAtIndex:i];asi与arr数组无关,它是keys数组的索引。
标签: ios objective-c