有梦才会去努力

setvalue和setobject

2019-10-03  本文已影响0人  渡边君WM

setValue forKey :

1、方法是KVC(键-值编码),方法是在NSObject对象中创建的,也就是说所有的oc对象都有这个方法,所以可以 用于任何类

例子:
People *p1 = [[People alloc] init];
[p1 setValue:@"mkj" forKey:@"name"];

当对象有name属性的时候就是通过KVC来赋值

2、value可以是nil,如果为nil,则自动调用removeObject forkey方法

3、key必须为string类型的

4、取值的时候valueforkey的key如果包含@符号,则取值时会自动把@去掉,程序crash

setObject forKey:

1、方法是NSMutabledictionary特有的;

2、value不可以为nil,如果为nil,则程序崩溃在此;但value可以为[NSNull null],[NSNull null]为一个空对象,并不是nil;

3、Key的对象是一个id类型,并不是NSString,只不过我们经常使用NSString而已。

4、取值的时候objectforkey的key如果包含@符号,无影响,可以正常取出该值

上一篇下一篇

猜你喜欢

热点阅读