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