位置:首頁 > 高級語言 > Objective-C教學 > Objective-C switch語句

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。

流程圖:

switch statement in Objective-C

例子:

#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