我快要疯了。由于某种原因,我找不到一个完整的示例来说明如何使用 NSSet (cocoa) 的objectsPassingTest: 函数。在有人向我指出有关 block 的页面之前,我已经看过这些内容了。给出的示例仅显示如何声明该函数,而不显示操作该函数的 block ,当我用自己的代码尝试他们的示例时,它不起作用。我只是想看看一些如何使用该函数的工作示例,然后我就可以自己解决这个问题了。
最佳答案
这是一个简单的例子。希望对您有所帮助。
NSSet *set = [NSSet setWithObjects:@"1",@"2",@"3",@"4",@"5",nil];
NSLog(@"%@",set); // Output (3,1,4,2,5) ... all objects
NSSet *o = [set objectsPassingTest:^(id obj,BOOL *stop){
NSString *so = (NSString *)obj;
int intval = [so intValue];
// accept objects less or equal to two
BOOL r = (intval <= 2);
return r;
}];
NSLog(@"%@",o); // Output (1,2) only objects smaller or equal to 2
关于iphone - NSSet 的objectsPassingTest 函数的示例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5152043/