使用字典值动态填充对象属性

发布于 2024-11-15 06:20:49 字数 418 浏览 3 评论 0原文

在 Objective-C 中,我有一个字典:

firstName -> John
lastName -> Smith
age -> 34

和一个具有相应实例变量和属性(适当处理内存管理)的对象 Person。我想创建一个方便的初始化程序,它采用字典作为参数,并从字典键/值填充所有对象字段(通过其属性用于内存管理目的),而不是手动执行以下操作:

obj.firstName = [dict objectForKey:@"firstName"];
obj.lastName = [dict objectForKey:@"lastName"];
obj.age = [dict objectForKey:@"age"];
....

我该怎么做?

In Objective-C, I have a dictionary:

firstName -> John
lastName -> Smith
age -> 34

and an object Person that has corresponding instance variables and properties (that handle memory management appropriately). I'd like to create a convenience initializer that takes a dictionary as an argument and populates all the object fields (via their properties for memory management purposes) from the dictionary keys/values, instead of manually doing something like:

obj.firstName = [dict objectForKey:@"firstName"];
obj.lastName = [dict objectForKey:@"lastName"];
obj.age = [dict objectForKey:@"age"];
....

How can I do this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

娇女薄笑 2024-11-22 06:20:49

您可以使用键值编码

[obj setValuesForKeysWithDictionary:dict];

另请参阅-setValuesForKeysWithDictionary: 的文档。

You can use Key-Value Coding:

[obj setValuesForKeysWithDictionary:dict];

See also the documentation for -setValuesForKeysWithDictionary:.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文