0

基本上我有一个 nsstring 对象数组,例如'A',L,L,A,H,A,B,A,D。输出应该是 NSDICTIONARY 0,3,5,7 FOR KEY A, 1,2 FOR KEY L 4 FOR KEY H 6 FOR KEY B 8 FOR KEY D。

4

2 回答 2

0

这是一个简单的 for-in 循环,看起来有点像这样:

- (NSDictionary*)dictionaryFromArrayOfStrings:(NSArray*)array {
    int idx = 1;
    NSMutableDictionary *retVal = @{}.mutableCopy;
    for (NSString *char in array) {
        //reverse them for a dictionary of NSNumbers for a set of NSString keys
        [retVal setObject:char forKey:@(idx)];
        idx++;
    }
    return retVal;
}
于 2013-02-21T04:42:44.033 回答
0

你不能有一个包含键和值的数组(即键 A 的 NSDictionary 0,3,5,7).. 你可以用 NSDictionary 来完成,如果你只有一组值.. 那么你应该为此使用数组

这是你应该做的:

NSDictionary* parent = [NSDictionary dictionaryWithObjectsAndKeys:[NSArray arrayWithObjects:@"A",@"L",@"L",@"A",@"H",@"A",@"B",@"A",@"D", nil], @"A", [NSDictionary dictionaryWithObjectsAndKeys:[NSArray arrayWithObjects:[[NSNumber numberWithInt:1], [NSNumber numberWithInt:2], nil]], @"L", [NSNUmber numberWithInt4], @"H", [NSNumber numberWithInt:6], @"B", [NSNumber numberWithInt:8], @"D",nil]; 
于 2013-02-21T04:45:57.973 回答