【问题标题】:How to create a NSArray of two valueForKey elements of an object from another array如何从另一个数组创建一个对象的两个 valueForKey 元素的 NSArray
【发布时间】:2013-04-30 01:35:55
【问题描述】:

我想创建一个 NSStrings 的 NSArray,它是我原始 NSArray 中找到的 NSDictionary 中的两个元素的连接值。我知道有点复杂,但我觉得我快到一半了,我也会描述我在哪里。

所以我有一个 NSDictionaries 的 NSArray,NSDictionaries 看起来像这样 -

NAME 
NICK NAME
YEAR
LEGAL

我想获取每个字典的 Name 和 Nick name 值并将它们形成一个 NSArray 的 NSStrings 看起来像这样

Name (Nick Name)

但我对如何正确执行此操作有点茫然,我已经达到了 For 循环大声笑

 for (int i = [dataArrayOfDictionaries count]; i <= [dataArrayOfDictionaries count]; i++) {

    }

我的主要问题是,如何访问数组的每个 NSDictionary 对象的这些 Name 和 Nick Name 元素。

那我怎么把它们像上面的例子一样放到一个格式化的字符串中,然后放到自己的NSArray中

任何帮助将不胜感激。

【问题讨论】:

    标签: ios nsarray nsdictionary nsobject


    【解决方案1】:

    所以,如果我理解正确,您想从存储在数组中的每个字典中获取名称和昵称,然后将两者结合起来放入一个新数组中?试试这样的:

    NSMutableArray *yourNewMutableArray = [[NSMutableArray alloc]init];
    
    for(NSDictionary *dict in dataArrayOfDictionaries)
    {
        NSString *realName = [dict objectForKey:@"NAME"];
        NSString *nickName = [dict objectForKey:@"NICK NAME"];
    
        NSString *combined = [[[realName stringByAppendingString:@" ("]stringByAppendingString:nickName]stringByAppendingString:@")"];
        [yourNewMutableArray addObject:combined];
    }
    

    【讨论】:

    • cool 会试试这个。从你的解释来看是的,这正是我想要做的。
    • 字。我刚刚编辑它以从 nsmutabledictionary 更改为 nsdictionary 因为我认为这就是你使用的?
    • 很酷,所以我刚刚尝试过,但我在这一行遇到了这个奇怪的错误** NSString realName = [dict objectForKey@"NAME"];* 说这个预期的']'
    • 哦,是的,您在 @ 之前缺少一个冒号
    • 或者实际上是我的错......我是哈哈......在飞行中打字,只是编辑它
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-30
    相关资源
    最近更新 更多