首页 > 安全资讯 >

IOS NSMutableDictionary setObject setValue

13-03-16

NSMutableDictionary- (void)setObject:(id) for :(NSstring *)key当id 为 nil,会出现 crash。但是,当用setValue 则没有事情。目前 Dic 用setValue 代替 setObject 构建MutableDictionary,没有出...

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>>";
 
    };
 
}
 
 
 
 
相关文章
最新文章
热点推荐