为了账号安全,请及时绑定邮箱和手机立即绑定

ObjectForKey和ValueForKey的区别-ForKey?

ObjectForKey和ValueForKey的区别-ForKey?

斯蒂芬大帝 2019-07-11 13:36:25
ObjectForKey和ValueForKey的区别-ForKey?.之间的区别是什么?objectForKey和valueForKey?我查阅了这两份文件,它们在我看来是一样的。
查看完整描述

3 回答

?
萧十郎

TA贡献1815条经验 获得超12个赞

如前所述,objectForKey:数据类型:(id)aKey鉴于valueForKey:数据类型:(NSString *)key.

例如:

 NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:[NSArray arrayWithObject:@"123"],[NSNumber numberWithInteger:5], nil];

 NSLog(@"objectForKey : --- %@",[dict objectForKey:[NSNumber numberWithInteger:5]]);  
    //This will work fine and prints (    123    )  

 NSLog(@"valueForKey  : --- %@",[dict valueForKey:[NSNumber numberWithInteger:5]]); 
    //it gives warning "Incompatible pointer types sending 'NSNumber *' to parameter of type 'NSString *'"   ---- This will crash on runtime.

所以,valueForKey:将只接受一个字符串值,并且是一个kvc方法,而objectForKey:任何类型的物体。

价值objectForKey将被同一类型的对象访问。


查看完整回答
反对 回复 2019-07-11
  • 3 回答
  • 0 关注
  • 866 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信