Objective-C switch语句
switch语句允许值的列表平等对变量进行测试。每个值被称为情况下,检查 switch case,该变量被切换。.
语法:
Objective-C 编程中的switch语句的语法如下:
switch(expression){ case constant-expression : statement(s); break; /* optional */ case constant-expression : statement(s); break; /* optional */ /* you can have any number of case statements */ default : /* Optional */ statement(s); }
以下规则适用于switch语句:
-
在switch语句中的表达式(expression ),用于必须有一个整体或枚举类型或类类型,其中的类有一个单一的不可分割或枚举类型转换功能。
-
可以出现在switch有任意数量的case语句。每个案例后面的值进行比较和一个冒号。
-
constant-expression 常量表达式的case 必须是相同的数据类型的变量中的switch,并且它必须是一个常数或一个文字。
-
当变量被打开等于case ,这种情况下,后面的语句将执行,直到达到一个break语句。
-
当达到一个break语句,终止switch语句的控制流跳转到下一行。
-
并不是每一个case需要包含break。如果出现没有break,控制流将下降到后面的case,直到达到break。
-
switch语句可以有一个可选的default case,它必须出现在switch 结束之前。默认情况下,可用于执行任务 default case 不管条件是否为真。在default case中没有要求一定有break。
流程图:
例子:
#import <Foundation/Foundation.h> int main () { /* local variable definition */ 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; }
让我们编译和运行上面的程序,这将产生以下结果:
2013-09-07 22:44:26.928 demo[17555] Well done 2013-09-07 22:44:26.929 demo[17555] Your grade is B