gpt4 book ai didi

ios - 从核心数据实体获取属性值数组的有效方法是什么?

转载 作者:技术小花猫 更新时间:2023-10-29 11:18:22 29 4
gpt4 key购买 nike

考虑以下几点:

NSFetchRequest *request = [[NSFetchRequest Alloc] init];
request.entity = [NSEntityDescription entityWithName:@"Person" inContext:_MOC];
request.propertiesToFetch = [NSArray arrayWithObject:@"Name"];
NSError *error = nil;
NSArray *results = [_MOC executeFetchRequest:request error:&error];

这将返回一组 Person 对象。我想要的是来自这些对象的一组 Person.name 值。目前我遍历结果数组,提取名称并构建一个新数组。有没有更清洁、更快的方法来做到这一点?我考虑过将 request.resultType 更改为 NSDictionaryResultType 但这并没有多大用处,因为我仍然需要将字典数组转换为我需要的数组。

我已经实现了上述解决方案,因此真的在寻找更好的方法。如果正确答案是“没有更好的方法”,那很好,只要确保我没有遗漏任何东西即可。谢谢!

编辑:考虑到这一点时,我质疑我是否需要一组值而不是仅使用托管对象数组。无论如何,如果有一个很好的答案,我们仍然会很感激。

最佳答案

请求 NSDictionaryResultType,然后使用生成的字典数组,只请求 [array valueForKey:@"name"]。当 NSArray 接收到 -valueForKey: 时,它会返回一个新的 NSArray,该 NSArray 是根据调用 -valueForKey: 的结果创建的它的所有元素。

关于ios - 从核心数据实体获取属性值数组的有效方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8188564/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com