単純な valueForKey: または valueForKeyPath: では実行できない @UnionOfObjects が提供するものを理解できません。
@unionOfObjects 演算子は、演算子の右側のキー パスで指定されたプロパティ内の個別のオブジェクトを含む配列を返します。「@distinctUnionOfObjects」とは異なり、重複したオブジェクトは削除されません。次の例は、トランザクション内のトランザクションの受取人プロパティ値を返します。
NSArray *payees = [transactions valueForKeyPath:@"@unionOfObjects.payee"];
結果の受取人の配列には、次の文字列が含まれます: Green Power、Green Power、Green Power、Car Loan、Car Loan、Car Loan、General Cable、General Cable、General Cable、Mortgage、Mortgage、Mortgage、Animal Hospital。
上記の例では、
NSArray *payees = [transactions valueForKey:@"payee"];
同じ値の配列を返しますが、コードは少なくなります。私は何が欠けていますか?