我有一个具有以下属性的类:
- 姓名
- 电子邮件
- 用户名
我想将这些属性转换为字典。如何正确命名执行该操作的方法以遵守 Apple 的约定?
我在想:
- (NSDictionary *) convertToDictionary {}
我有一个具有以下属性的类:
我想将这些属性转换为字典。如何正确命名执行该操作的方法以遵守 Apple 的约定?
我在想:
- (NSDictionary *) convertToDictionary {}
只是-dictionaryRepresentation
,传达您可以以字典形式获取存储在对象中的数据的概念怎么样?所以你会说:
NSDictionary *personDict = [person dictionaryRepresentation];
另一个合理的选择是-properties
,将返回类型从名称中去掉:
NSDictionary *personDict = [person properties];
考虑一下从一个NSString
到一个NSData
你做的事情:
NSData* data = [str dataUsingEncoding:NSUTF8StringEncoding];
同样,您可以这样做:
- (NSDictionary *)dictionary;
因为你没有参数。或者考虑从NSData
你NSString
做:
[[[NSString alloc] initWithData:data encoding:encoding] autorelease]
类方法(如果有的话)看起来像:
[NSString stringWithData:data encoding:encoding]
所以你可以把它作为一个类别NSDictionary
。假设您的班级被称为Account
:
+ (NSDictionary *)dictionaryWithAccount:(Account *)account;
取决于你认为更好看的东西:
Account *account = ...;
[account dictionary];
[NSDictionary dictionaryWithAccount:account];