2013-10-14 79 views
0

我加入电话号码NSDictionaryNSMutableArray这样的:意外括号

NSMutableArray *main_level = [NSMutableArray array]; 


[main_level addObject:@{@"phone":@[@"052443223",@"763765347647",@"763765347647",@"763765347647",@"763765347647",@"763765347647",@"763765347647"]}]; 

这是日志打印:

2013-10-14 10:49:27.544 tfv[44111:907] (
    { 
    phone =   (
     052443223, 
     763765347647, 
     763765347647, 
     763765347647, 
     763765347647, 
     763765347647, 
     763765347647 
    ); 
} 
) 

,但预期的结果是不一样的括号所以: 当我记录这NSLog(@"%@",[main_level objectAtIndex:0]);

2013-10-14 10:50:22.539 tfv[44129:907] { 
phone =  (
    052443223, 
    763765347647, 
    763765347647, 
    763765347647, 
    763765347647, 
    763765347647, 
    763765347647 
); 

}

为什么这个大括号添加了,我该如何避免它?

+0

首先是记录包含包含数组的字典的数组。第二个是记录包含数组的字典。 –

回答

2

1)您正在使用key = phone将一组电话号码添加到字典中。

2)然后你将该字典添加到数组。

所以,无论输出是否正确。你只是无法避免,大括号

如果你想获得的第一个电话号码,然后做到这一点,

NSDictionary *dictOfPhoneNumbers = [[main_level objectAtIndex:0] objectForKey:@"phone"]; 

for(int i=0; i<dictOfPhoneNumbers.count; i++) 
{ 
    NSLog(@"Phone = %@",[dictOfPhoneNumbers objectAtIndex:i]); 
} 
3
(<-- beginning of array 
    { <-- beginning of dictionary 
    phone =   (<-- beginning of phone array 
     052443223, 
     763765347647, 
     763765347647, 
     763765347647, 
     763765347647, 
     763765347647, 
     763765347647 
     ); <-- end of phone array 
    } <-- end if dictionary 
) <-- end of array 

这只是意味着你正在打印一个数组。即NSLog(@"%@",main_level);

如果你做NSLog(@"%@",[main_level objectAtIndex:0]);那么你正在打印字典。