上一章Objective-C开发教程请查看:Objective-C循环语句和循环控制语句
【Objective-C条件语句详解 –
Objective-C开发教程】同样了,如果C语言好的话,可以跳过这部分,OC的条件语句和C语言的条件语句是一样的。OC中一共有三种条件语句:if语句、if-else语句和switch语句,另外还有一个简写的三元运算符?:,之前已经说过,这里就不再说了。
if语句if语句的使用语法如下:
if(boolean_expression) {
statement(s);
}
如果布尔表达式boolean_expression为真,则执行条件体内的语句statement(s); ,否则跳过。其中OC中非0和非null值都是true,0或null都是false。
下面是if语句的使用例子:
#import <
Foundation/Foundation.h>
int main () {/* 本地变量 */
int a = 10;
/* 使用if语句检查布尔条件 */
if( a <
20 ) {
/* 条件为true执行以下语句 */
NSLog(@"a is less than 20" );
}NSLog(@"a : %d", a);
return 0;
}
if-else语句if-else语句的语法如下:
if(boolean_expression) {
statement01
} else {
statement02
}
如果布尔表达式boolean_expression为真,则执行语句statement01,否则执行statement02。另外可用使用多个if判断,如下:
if(c1) {
s1
}
else if(c2){
s2
}
else {
s3
}
如果条件c1为true,则执行s1,否则向下检查c2,若c2为true则执行s2,否则执行s3。另外,如果c1和c2同时为真,不会执行s2,只会执行s1。
下面是if-else语句的使用例子:
#import <
Foundation/Foundation.h>
int main () {
int a = 100;
if( a <
20 ) {
/* 条件为真执行以下语句 */
NSLog(@"a is less than 20" );
} else {
/* 否则执行以下语句 */
NSLog(@"a is not less than 20" );
}NSLog(@"value of a is : %d\n", a);
return 0;
}
switch语句switch语句和上面介绍的if-else if-else语句类似,使用语法如下:
switch(expression){
case constant-expression:
statement(s);
break;
/* 可选*/
case constant-expression:
statement(s);
break;
/* 可选 *//* 可以有任意数量的case语句 */
default : /* 可选 */
statement(s);
}
switch语句计算expression的值,逐个匹配case对应的每个值,进而进行对应的statement(s); 。其中break语句用于直接跳出switch语句,不用的话执行完一个case就会继续向下检查,这一点和else if不同,default语句是所有的case都不匹配的情况下执行的case。
下面是使用switch语句的例子:
#import <
Foundation/Foundation.h>
int main () {char grade = 'B';
switch(grade) {
case 'A' :
NSLog(@"Excellent!" );
break;
case 'B' :
case 'C' :
NSLog(@"Well done" );
break;
case 'D' :
NSLog(@"You passed" );
break;
case 'F' :
NSLog(@"Better try again" );
break;
default :
NSLog(@"Invalid grade" );
}NSLog(@"Your grade is%c", grade );
return 0;
}
另外,每种条件语句还有对应的嵌套语句,和循环嵌套语句也是类似的,可以动手试下。
推荐阅读
- Objective-C声明、定义函数、调用函数和函数参数 – Objective-C开发教程
- Objective-C循环语句和循环控制语句 – Objective-C开发教程
- Objective-C六大类型操作符详解 – Objective-C开发教程
- Objective-C使用变量和常量 – Objective-C开发教程
- Objective-C基本语法和数据类型 – Objective-C开发教程
- Xcode Target、Scheme、Build Settings、Porject和Workspace介绍 – Objective-C开发教程
- Objective-C程序结构和项目结构介绍 – Objective-C开发教程
- Objective-C入门介绍和环境安装 – Objective-C开发教程
- 六大算法设计技巧(贪婪法、分治法、动态规划、随机化算法、回溯法和分支限界法)