OC总结-block语法

来源:互联网 发布:全国网络零售交易额 编辑:程序博客网 时间:2024/05/29 11:00

   

    int (^myBlock)(int) = ^(int num){

        return num *10;

    };

    

    int a =0;

    a = myBlock(100);

    NSLog(@"a = %d", a);

    

    

    //求最大值

    

    int (^maxBlock)(int,int) = ^(int num1,int num2){

        int max =0;

        max = (num1 > num2) ? num1 : num2;

        return max;

    };

    

    int max =0;

    max = maxBlock(4,6);

    NSLog(@"max = %d", max);

    

    //相加

    int (^sumBlock)(int,int) = ^(int a,int b){

        return a + b;

    };

    

    int sum =0;

    sum = sumBlock(2,3);

    NSLog(@"%d", sum);

    

    

   //返回值整型参数是字符串

    

    int (^string2Number)(NSString *) = ^(NSString *s){

        return [sintValue];

    };

    

    int b =0;

    b = string2Number(@"213");

    NSLog(@"b = %d", b);

    

    

    //

    typedefint (^SBBlock)(NSString *);

    

    SBBlock sBlock = string2Number;

    

    NSLog(@"%d", sBlock(@"123"));

    

    //__block局部改需加上

    __blockint num = 1;

    void (^addNum)(void) = ^(void){

        int c = num *10;

        NSLog(@"c = %d", c);

        count++;  //全局变量

    };

    

    addNum();

    NSLog(@"num = %d", num);

    

    

    //排序

    

    NSArray *stringArray = [NSArrayarrayWithObjects:@"abc 10",@"abc 21", @"abc 12",@"abc 50", @"abc 13",nil];

    NSComparisonResult (^compareBlock)(NSString *,NSString *) = ^(NSString *s1,NSString *s2){

        return [s2compare:s1];

    };

    

    NSArray *sortArray = [stringArraysortedArrayUsingComparator:compareBlock];

    NSLog(@"%@", sortArray);

    


0 0
原创粉丝点击