Objective-C字面量语法总结

本文介绍如何使用Objective-C中的字面量语法简化数值、数组、字典等对象的创建过程,并强调其安全性及优雅性。

 通常情况下,创建数组,字典的时候需要写一些很长的方法名,今天就总结一下如何使用字面量语法代替这些方法。

 

1、数值的创建

1
2
3
NSNumber *number1 = [NSNumber numberWithInt:1]; //传统方法
 
NSNumber *number2 = @1;                         //字面量创建方法

  只用一个@就代替了传统的创建方法,显得优雅整洁。

1
2
3
4
NSNumber *intNumber     = @1;
NSNumber *floatNumber   = @1.5f;
NSNumber *boolNumber    = @YES;
NSNumber *charNumber    = @'b';

  

2、数组的创建

    NSArray *fruits = [NSArray arrayWithObjects:@"apple",@"orange",@"pear",nil];  
    NSArray *fruitss = @[@"apple",@"orange",@"pear"];    //使用[]创建数组

若用字面量创建数组的时候元素出现nil的时候,会抛出异常,程序终止执行。而传统创建数组则不会报错,创建数组的时候依次处理元素知道nil为止,所以我们能够提前发现错误,用字面量创建数组更加安全。

3、字典的创建

 NSDictionary *userNameDic = [NSDictionary dictionaryWithObjectsAndKeys:@"mu",@"firstName",@"tou",@"lastName",nil];
 NSDictionary *userNameDicc = @{@"firstName":@"mu",@"lastName":@"tou"};

可以看出,新语法创建的字典,比较符合人们的阅读习惯key在左,value在右,不过创建字典的时候需要注意的是,键和值必须是对象,不能把c语言的类型放进去,应该转变为NSNumber后存入。

访问字典值的方法

NSString *lastName = [userNameDic objectForKey:@"lastName"];
NSString *lastName = userNameDicc[@"lastName"];

 

4、使用字面量语法创建的的对象都是不可变的,如果需要变成可变对象,需要做如下转换

NSMutableArray *fruits = [@[@"apple",@"orange",@"pear"] mutableCopy];

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值