gpt4 book ai didi

objective-c - 如何从核心数据实体对象的 NSArray 中提取选定的属性并形成一个联合字符串?

转载 作者:塔克拉玛干 更新时间:2023-11-02 10:13:15 27 4
gpt4 key购买 nike

通常,如果我有一个只有 NSString 的 NSArray,我可以使用 NSArray 的方法:

- (NSString *)componentsJoinedByString:(NSString *)separator

获取字符串(如“John,David,Peter”)。但是,如果我有一个 NSArray 的核心数据实体对象,我只需要在其中获取 1 个属性(比如,每个实体对象的“名称”属性),最简单的方法是什么?

Core Data 实体对象可以有很多属性(姓名、电话、生日),但我只想要一个像“John,David,Peter”这样的字符串。

最佳答案

以下将仅获取 Person 对象的 name 属性:

NSFetchRequest *request = [NSFetchRequest fetchRequestWithEntityName:@"Person"];
request.propertiesToFetch = @[@"name"];
request.resultType = NSDictionaryResultType;
NSArray *array = [managedObjectContext executeFetchRequest:request error:nil];
NSString *names = [[array valueForKey:@"name"] componentsJoinedByString:@","];
NSLog(@"%@", names);

您需要将 resultType 设置为 NSDictionaryResultType 否则它将忽略 propertiesToFetch。提取的结果是一个字典数组。使用 valueForKeycomponentsJoinedByString 将从所有名称中创建一个字符串。

关于objective-c - 如何从核心数据实体对象的 NSArray 中提取选定的属性并形成一个联合字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12992527/

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