繁体   English   中英

如何从nsmutabledictionary中检索值

[英]How to retrieve the values from nsmutabledictionary

我已经将数据存储在nsmutabledictionary中,在我存储的字典值下面给出了这些值,这些值是实例,如何在对象中检索这些值?

English =     (
    "<Row: 0x4e50560>",
    "<Row: 0x4e50790>",
    "<Row: 0x4e509d0>"
);
Roman =     (
    "<Row: 0x4e50c60>",
    "<Row: 0x4e50ea0>"
);
japanese =     (
    "<Row: 0x4e51150>",
    "<Row: 0x4e513a0>",
    "<Row: 0x4e515e0>",
    "<Row: 0x4e51860>"
);
arab =     (
    "<Row: 0x4e50140>"
);

检索它时,将查看最后一个对象,并且无法查看代码中的另一个对象。 如何访问字典每个键中的值,并且这些值作为对象。 任何人都可以解释以上代码中缺少的内容。

这是我的代码

NSArray *keys;
    id key, value;

    keys = [appDelegate.viewDictionary allKeys];
    int count = [keys count];
    for (int i = 0; i < count; i++)
    {
        key = [keys objectAtIndex: i];
        value = [appDelegate.viewDictionary objectForKey: key];
        NSLog (@"Key: %@ for value: %@", key, value);
        for(Row *rs in value) {
            NSLog(@"%@", rs.user);
            //cell.textLabel.text = rs.user;
        }
    }

这是一个接近您的问题的示例,查看代码中的差异并查看是否有帮助。

NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:
      [NSArray arrayWithObjects:
       @"<Row: 0x4e50560>",
       @"<Row: 0x4e50790>",
       @"<Row: 0x4e509d0>",
       nil], @"English",

      [NSArray arrayWithObjects:
       @"<Row: 0x4e50c60>",
       @"<Row: 0x4e50ea0>",
       nil], @"Roman",

      [NSArray arrayWithObjects:
       @"<Row: 0x4e51150>",
       @"<Row: 0x4e513a0>",
       @"<Row: 0x4e515e0>",
       @"<Row: 0x4e51860>",
       nil], @"Japanese",

      [NSArray arrayWithObjects:
       @"<Row: 0x4e50140>",
       nil], @"Arab",

      nil];


for (NSString *key in dict) {
    NSArray *value = [dict objectForKey:key];
    NSLog (@"Key: %@ for value: %@", key, value);
    for(NSString *rs in value) {
        NSLog(@"%@", rs);
    }
}

'allKeys'是否给您对包含对象(键)的实际数组的引用? 尝试为“键”数组分配内存:

keys = [NSArray arrayWithArray:[appDelegate.viewDictionary allKeys]];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM