数组中包含对象的对象数组,其值包含在另一个数组中

时间:2015-07-21 07:59:15

标签: objective-c arrays

是否有可能获得没有循环的对象数组:

想象一下,有了数组: 答:[1,2,3,4]

B - <字典数组

B:[[" code",a," id",4],[" code",b," id" ,2,["代码",c"," id",4"],["代码",d," ID" 5"]];

现在我想得到一个数组,来自B的ID在A中,所以结果数组看起来像: C:[["代码",a," id",4],["代码",b," id",2] ,["代码",c"," id",4"]]

如何在没有循环的情况下执行此操作?也许是一些谓词或什么?

2 个答案:

答案 0 :(得分:0)

你提到了一个字典数组,但在你的例子中我看到了一个数组数组。这有点令人困惑。

无论如何,我认为你所寻找的是NSArray上的一种方法:filteredArrayUsingPredicate

答案 1 :(得分:0)

是的,谓词可以解决这个问题:

[B filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"id IN %@", A]];

请注意,这仅适用于使用NSNumbers而非直接整数的情况 - 这些不能存储在NSArrays或NSDictionaries中。 (NSStrings也可以。)