联合阵列的NSArray

Eug*_*ene 10 iphone cocoa objective-c ios

我有一个名为MMPlace的NSArray对象,它具有MMProduct对象的NSArray.

如何获得我的MMPlace对象数组包含的所有MMProduct对象的联合NSArray?喜欢的东西NSArray *arr = [array valueForKeyPath:@"@unionOfObjects.products"];就好了,虽然这个具体的例子是行不通的.

Ben*_*ngs 42

你可以这样做@unionOfArrays.您缺少的是因为数组是直接嵌套的,所以集合运算符右侧的键必须是self:

NSArray *nestedValues = @[@[@1, @2, @3], @[@4, @5, @6]]
NSArray *flattenedValues = [nestedValues valueForKeyPath:@"@unionOfArrays.self"];
// flattenedValues contains @[@1, @2, @3, @4, @5, @6]
Run Code Online (Sandbox Code Playgroud)


Chu*_*uck 3

创建一个 NSMutableArray,循环遍历原始数组并调用addObjectsFromArray:每个子数组。