
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,它从调用-valueForKey的结果创建:在其所有元素上. 总结以上是内存溢出为你收集整理的ios – 从核心数据实体获取属性值数组的有效方式是什么?全部内容,希望文章能够帮你解决ios – 从核心数据实体获取属性值数组的有效方式是什么?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)