iOS开发

setValue forkey 和 setObject fork

2018-09-05  本文已影响52人  渡边君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如果包含@符号,无影响,可以正常取出该值

上一篇 下一篇

猜你喜欢

热点阅读