OStack程序员社区-中国程序员成长平台

标题: ios - 将多个 NSArrays 添加到 NSMutableDictionary,并按数组顺序使用相应的匹配项 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 03:57
标题: ios - 将多个 NSArrays 添加到 NSMutableDictionary,并按数组顺序使用相应的匹配项

我有两个数组,分别是 itemName 和 itemImages

NSArray *itemName = @[@"Blog", @"Missions", @"Subscriptions", @"Questions", @"Aide",@"Disconnect"];
NSArray *itemImages = @[@"ico-1",@"ico-2", @"ico-3", @"ico-4", @"ico-5", @"ico-6"];

我需要将它们添加到字典中

 NSMutableDictionary *menuItemNameImage = [[NSMutableDictionary alloc] init];
 [menuItemNameImage setValue:itemName forKey"itemName"];
 [menuItemNameImage setValue:itemImages forKey"itemImages"];

 NSLog(@"%@", menuItemNameImage);

但这使得下面的字典

{
    itemImages =     (
        "ico-1",
        "ico-2",
        "ico-3",
        "ico-4",
        "ico-5",
        "ico-6"
    );
    itemName =     (
        Blog,
        Missions,
        Subscriptions,
        Questions,
        Aide,
        Disconnect
    );
}

我更想要的是一些这样的想法:

{ 
  { 
    itemImages = "icon-1",
    itemName = Blog
  },
  { 
    itemImage = "icon-2",
    itemName = "Missions"
  }, ...
}



Best Answer-推荐答案


您无法使用单个 NSDictionary 获得该结构 - 您需要 NSDictionary 对象的 NSArray

你可以这样做:

NSMutableArray *menuItemNameImage = [NSMutableArray array];
for (int i = 0 ; i != itemNames.count ; i++) {
    [menuItemNameImage addObject: @{
        @"itemName" : itemNames[i]
    ,   @"itemImage" : itemImages[i]
    }];
}

关于ios - 将多个 NSArrays 添加到 NSMutableDictionary,并按数组顺序使用相应的匹配项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18501422/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4