一、OC中新增加的数据类型
(1)Boolean类型
作用:用来存放逻辑值
值:true(真) false(假)
特点:定义无符号char类型的变量,存放0和非0,也就是 true 和 false,true的值为1,flase的值为0。
应用:
Boolean flag = true; if(flag){ NSLog(@"真 %d",flag); }else{ NSLog(@"假 %d",flag); } 输出结果为"真 1"
注意:学习的时候有个疑问,flag变量能否赋整数的值,用下面的代码测试了一下:
测试结果为可以赋值,接着又测试赋值字符'a',下面看一下结果:
也是可以的,由此看出,因为 typedef unsigned char Boolean; 所以Boolean实际是一个无符号的字符,可以赋值0-255的任意数。
而true 和 false 是宏定义,值如下:
#define true 1
#define false 0
(2)BOOL类型
作用:用来存放逻辑值
值: YES(真) NO(假)
特点:定义无符号char类型的变量,同Boolean类型相同。
应用:
Boolean flag2 = NO; if(flag){ NSLog(@"真 %d",flag2); }else{ NSLog(@"假 %d",flag2); } 输出结果为"假 0"
BOOL的用法与Boolean基本相同,可能使用频率略高。
二、OC中的异常捕捉机制
异常:程序运行的时候有bug 捕捉机制:排除错误
@try{ //可能出错的语句 <#statements#> } @catch (NSException *ne){ //捕捉最具体的异常类型 < #handler#> } @catch (NSException *ne){ //捕捉一个比较重要的异常类型 } @catch (id ue){ //再次指出捕获的异常 } @finally{ //不管有没有异常finally内的代码都会执行 < #statements#>
}
|