美文网首页
OC中的语法糖

OC中的语法糖

作者: 红鲤鱼绿鲤鱼与鱼 | 来源:发表于2016-10-17 11:52 被阅读30次
    • 被大量使用的语法糖
      在编写OC代码时,出于方便我们经常会用到如下方法来创建对象
      NSString *str = @"string";
      NSNumber *gNum = @10;
      NSArray *arr = @[@"obj1",@"obj2",@"obj3"];
      这样的代码大量出现在我们的程序中,其实这就是OC中的语法糖。
    • 什么是语法糖
      语法糖(Syntactic suger),也译为糖衣语法,指计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序员使用。
    • OC中常用的有哪些
      1.字符串
        NSString *str = @"string";
    //    相当于
        char *s = "string";
        NSString *str1 = [NSString stringWithUTF8String:s];
    

    2.NSNumber

        NSNumber *num = @3;
    //    相当于
        NSNumber *num1 = [NSNumber numberWithInteger:3];
    
        NSInteger grade = 100;
        NSNumber *gNUm = @(grade);//用()表示grade是一个对象
    

    3.数组

        NSArray<NSString *> *arr = @[@"obj1",@"obj2",@"obj3"];
    //    相当于
        NSString *raw[] = {@"obj1",@"obj2"};
        NSArray *arr1 = [NSArray arrayWithObjects:raw count:2];
    
        NSString *str = arr[0];
    //    相当于
        NSString *str = [arr objectAtIndex:0];
    

    4.字典

    NSDictionary *dict = @{@"key1":@"value1",
                               @"key2":@"value2",
                               @"key3":@"value3"};
    
    NSMutableDictionary *dictM = [NSMutableDictionary dictionaryWithObjectsAndKeys:@1,@"apple",
                                      @2,@"banana",
                                      nil];
        NSNumber *v = dictM[@"apple"];
    //    相当于
        NSNumber *value2 = [dictM objectForKey:@"apple"];
        
        dictM[@"apple"] = @3;
    //    相当于
        [dictM setObject:@3 forKey:@"apple"];
    

    *如有遗漏欢迎补充

    相关文章

      网友评论

          本文标题:OC中的语法糖

          本文链接:https://www.haomeiwen.com/subject/bdogyttx.html