App下載

Java語言中的另一個選擇語句 switch-case的詳細用法

猿友 2021-07-19 10:01:35 瀏覽數(shù) (4578)
反饋

     相較于switch-case?語句,許多初學(xué)者知道的更多,或者說更熟悉的是編程語言中的? if-else?條件選擇語句。本篇文章將基于 java 語言為您詳細介紹switch-case?的詳細用法。

1、switch-case 的介紹

?switch-case? 語句一般是由一個控制表達式?和多個?case?組成的。

switch-case 控制表達式支持的類型有 byte、short、char、int、String(Java 7)。

switch-case 語句完全可以和 if-else 語句進行互轉(zhuǎn),但通常來說,switch-case 語句的執(zhí)行效率更高。

在 switch-case 語句中的 default 是在表達式找不到匹配的 case 時執(zhí)行的。但是 default 并不是必須的。

一旦 case 匹配了,就會順序執(zhí)行后面的代碼,而不管后面得 case 語句是否匹配,直到碰到第一個 break,則結(jié)束。


2、語法格式

switch(表達式){
    case 條件1:
        語句1;
        break;
    case 條件2:
        語句2;
        break;
    case 條件3:
        語句3;
        break;
    ...
    default:
        語句;    
}


3、具體代碼使用

String str =  "C" ;
switch  (str) {
case  "A" :
     System.out.println( "A" );
     break ;
case  "B" :
     System.out.println( "B" );
     break ;
case  "C" :
     System.out.println( "C" );
     break ;
default :
     System.out.println( 0 );
}

打印結(jié)果:

微信截圖_20210719094949


4、常見應(yīng)用情況

(1)case 中兩個值進行一樣的操作


public String method(char variable){
	switch(grade)
	{
	 case 'A' :
		System.out.println("優(yōu)秀"); 
		break;
	 case 'B' :
	 case 'C' :
		System.out.println("良好");
		break;
	 case 'D' :
		System.out.println("及格");
		break;
	 case 'F' :
		System.out.println("你需要再努力努力");
		break;
	 default :
		System.out.println("未知等級");
	}
}

(2)case 中沒有 break 語句,從當匹配的 case 開始,后續(xù)所有的 case 的值陸續(xù)輸出。

//傳值為3
public String method(int variable){
	switch(i){
		case 9:
			System.out.println("9");
		case 3:
			System.out.println("3");
		case 6:
			System.out.println("6");
		default:
			System.out.println("def");
	}
}

打印結(jié)果:

3

6

def

(3)如果當前匹配的 case 沒有 break 語句,則從當前的 case 開始,后續(xù)所有的 case 的值都會陸續(xù)輸出。直到遇到第一個 break 語句,跳出判斷。


//傳值為3
public String method(int variable){
	switch(i){
		case 9:
			System.out.println("9");
		case 3:
			System.out.println("3");
		case 6:
			System.out.println("6");
			break;
		default:
			System.out.println("def");
	}

輸出結(jié)果

3

6


5、總結(jié)

相較于? if-else?語句來說,?switch-case?支持類型比較少,而且?case?是不能作為變量的。但是在項目開發(fā)中,如果業(yè)務(wù)需求比較多,這個是建議使用?switch-case?。一是后者比前者的執(zhí)行效率要高,二是后者的邏輯比較清晰。

以上就是關(guān)于 Java中的switch-case語句的簡單介紹以及詳細使用方法的全部內(nèi)容,如果想要了解更多關(guān)于 Java 相關(guān)的知識內(nèi)容,請關(guān)注W3Cschool,如果對您的學(xué)習(xí)有所幫助,請多多支持我們!


0 人點贊