iphone - NSSet 的objectsPassingTest 函数的示例?

标签 iphone cocoa ipad nsset

我快要疯了。由于某种原因,我找不到一个完整的示例来说明如何使用 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/

相关文章:

objective-c - Cocoa:获取NSWindow相对位置

ios - NSProgress fractionCompleted 键值观察方法未调用

ipad - 架构 i386 :Apple Mach-O Linke(id)error 的 undefined symbol

iphone - 在哪里使用 CFBundleName

iphone - UIImage 在开始时不适合 UIScrollView

macos - NSController 有自己的 xib 文件但没有 View

macos - 尝试查看 NSCell 的 NSTextView 的委托(delegate)

iphone - Xcode - 从不同的 View 更新 ViewController 标签文本

iphone - 如何在 IBAction 中放入无效代码?

ios - 如何在 UIModalPresentationFormSheet 中调整 UIWebView 的大小?