美文网首页
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