我从服务器的json创建了一个数组,其NSLOG显示了这个 -
(
(
"/api/v1/user/75/"
),
(
"/api/v1/user/86/"
),
(
"/api/v1/user/65/"
),
(
"/api/v1/user/70/"
),
(
"/api/v1/user/2/"
)
)
我怎么能转换数组的元素,以便我得到修改后的数组的这个NSLOG ..
(
"/api/v1/user/75/",
"/api/v1/user/86/",
"/api/v1/user/65/",
"/api/v1/user/70/",
"/api/v1/user/2/"
)
如果你想知道为什么我需要它,因为在下一阶段我无法使用nspredicate使用这个数组元素过滤另一个数组。后面的格式没有给出错误
答案 0 :(得分:2)
根据您的描述,您有一个NSArray,它包含NSArray对象(NSStrings所在的对象)。要将其转换为NSStrings的NSArray,您必须将其展平。以下是可用于展平的示例方法:
- (NSArray*)flatten:(NSArray*)array {
NSMutableArray* flattenedArray = [NSMutableArray arrayWithCapacity:[array count]];
for (id element in array) {
if ([element isKindOfClass:[NSArray class]]) {
[flattenedArray addObjectsFromArray:[self flatten:element]];
}
else {
[flattenedArray addObject:element];
}
}
return flattenedArray;
}