现在的位置: 首页 > 综合 > 正文

IOS NSMutableDictionary setObject setValue

2018年05月26日 ⁄ 综合 ⁄ 共 913字 ⁄ 字号 评论关闭

NSMutableDictionary 

- (void)setObject:(id) for :(NSstring *)key

当id 为 nil,会出现 crash。

但是,当用setValue 则没有事情。目前 Dic 用setValue 代替 setObject 构建MutableDictionary,没有出现什么大问题

例子:

NSMutableDictionary  *dic1 = [NSMutableDictionary dictionaryWithCapacity:1];

    [dic1 setObject:@"1" forKey:@"1"];

    [dic1 setObject:@"2" forKey:@"2"];

    [dic1 setObject:@"" forKey:@"3"];

    [dic1 setObject:@"4" forKey:@"4"];

    

    //[dic setObject:nil forKey:@"41"]; wrong

    

    [dic1 setValue:nil forKey:@"5"];

    

    [dic1 setValue:@"6" forKey:@"6"];

    

    [dic1 setValue:[NSDate date] forKey:@"date"];

    [dic1 setValue:[NSString string] forKey:@"nil string"];

    

    [dic1 setValue:[NSDictionary dictionaryWithObject:[[UIView alloc] init] forKey:@"View"] forKey:@"杂非String"];

2013-03-15 14:36:42.089 GuessMovies[5924:c07] {

    1 = 1;

    2 = 2;

    3 = "";

    4 = 4;

    6 = 6;

    date = "2013-03-15 06:35:56 +0000";

    "nil string" = "";

    "\U590d\U6742\U975eString" =     {

        View = "<UIView: 0xa421a10; frame = (0 0; 0 0); layer = <CALayer: 0xa24be80>>";

    };

}


抱歉!评论已关闭.