代码
mutableDict setValue:<#(nullable id)#> forKey:<#(nonnull NSString *)#>
mutableDict setObject:<#(nonnull id)#> forKey:<#(nonnull id<NSCopying>)#>
区别
setValue方法的key只能是字符串
setObject方法的key可以是遵守了NSCopying协议的对象,如:Dictionary
两者都能存储NSNull对象,setValue能存储nil,但setObject不能
能存储继承自NSObject的自定义对象
联想NSUserDefaults
代码
[NSUserDefaults standardUserDefaults] setValue:<#(nullable id)#> forKey:<#(nonnull NSString *)#>
[NSUserDefaults standardUserDefaults] setObject:<#(nullable id)#> forKey:<#(nonnull NSString *)#>
区别
setValue方法
setObject方法
能存储nil
不能存储NSNull对象,不能存储继承自NSObject的自定义对象
网友评论