ios - 在Objective-C中的NSMutableDictionary中更新值或设置新的键和值

标签 ios objective-c nsmutabledictionary

我有一个名称数组,想要通过使用A&B前缀来对它们进行计数。
例如,对于该用户名,我希望我的 NSMutableDictionary * cellNum 返回以每个字母开头的名称计数,例如:“A”:“2”和“B”:“1”。

@interface ...
{
    NSArray *users;
    NSMutableDictionary *cellNum;
}

@implementation ...
{
    users = @[@"Ali",@"Armita",@"Babak"];

    for (int i=0;i<users.count;i++)
    {
        if ( [users[i] hasPrefix:@"A"] )
        {
            cellNum[@"a"] = @([cellNum[@"a"] intValue]+1);
        }
        else
        {
            cellNum[@"b"] = @([cellNum[@"b"] intValue]+1);
        }
    }
}

最佳答案

尝试使用以下代码:

NSMutableDictionary *cellNum = [NSMutableDictionary dictionary];

[cellNum setObject:@(0) forKey:@"a"];
[cellNum setObject:@(0) forKey:@"b"];

NSArray* users = @[@"Ali",@"Armita",@"Babak"];

for (int i=0;i<users.count;i++)
{
if ( [users[i] hasPrefix:@"A"] ) {
cellNum[@"a"] = @([cellNum[@"a"] intValue]+1);
}
else {
cellNum[@"b"] = @([cellNum[@"b"] intValue]+1);
}
}

这肯定会给您所需的结果:{a = 2; b = 1; }

关于ios - 在Objective-C中的NSMutableDictionary中更新值或设置新的键和值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43228735/

相关文章:

ios - 使用 GCD 在 UITableviewCell 中异步加载和缓存图像

ios - 使用自定义标题按钮修改 TableView 中的部分?

iphone - 选择日历

ios - UIView 不会以编程方式移动

swift - 无法更新 NSMutableDictionary?

ios - 过滤里面有字典的 NSArray - swift 1.2

objective-c - NSMutableDictionary 崩溃并显示 "mutating message sent to immutable object"

ios - FCM 的无效注册响应

iphone - 使用静态 NSDate 确定通过时间

ios - 当键是数字时,我应该在 objC 中为键值对使用什么数据结构?