日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

JAVA入门级教学之(switch语句)

發(fā)布時間:2024/7/23 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JAVA入门级教学之(switch语句) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

/*
?? ? 關(guān)于switch語句(我稱為匹配語句):
?? ??? ?1.switch語句也屬于選擇結(jié)構(gòu),也是分支語句
?? ??? ?2.switch語句的語法結(jié)構(gòu):
?? ??? ??? ?一個比較完整的switch語句應(yīng)該這樣編寫:
//case有匹配的意思,相當(dāng)于拿數(shù)據(jù)匹配,拿數(shù)據(jù)匹配
//case穿透現(xiàn)象,意思是當(dāng)break不存在的時候,即使第一個不匹配,也會一直按順序往下面匹配,直到遇見break;跳出結(jié)構(gòu)體

?? ??? ?switch(int和String類型的字面值或變量){
?? ??? ??? ?case int和String類型的字面值或變量:
?? ??? ??? ??? ??? ??? ??? ?Java語句;
?? ??? ??? ??? ??? ??? ??? ?Java語句;
?? ??? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ?case int和String類型的字面值或變量:
?? ??? ??? ??? ??? ??? ??? ?Java語句;
?? ??? ??? ??? ??? ??? ??? ?Java語句;
?? ??? ??? ??? ??? ??? ??? ?break;?? ?
?? ??? ??? ?default:
?? ??? ??? ??? ??? ??? ??? ?java語句;

?? ??? ?}

3.switch語句的執(zhí)行原理:
?? ?switch后面小括號中的"數(shù)據(jù)"和case后面的"數(shù)據(jù)"進(jìn)行一一匹配,匹配成功的分支執(zhí)行。

4.匹配成功的分支執(zhí)行,分支中最后面有"break;"語句的話,整個switch語句都會終止。

5.匹配成功的分支執(zhí)行,分支當(dāng)中沒有"break;"語句的話,直接進(jìn)入下一個分支執(zhí)行(不進(jìn)行匹配的時候),
? 這種現(xiàn)象被稱為case穿透現(xiàn)象【意思是提供break;語句可以避免穿透】

6.所有分支都沒有匹配成功,當(dāng)有default的語句,會執(zhí)行default分支當(dāng)中的程序。

7.switch后面括號內(nèi)和case后面只能是int或者是String類型的數(shù)據(jù),不能是探測其它類型的數(shù)據(jù)。
?? ?
?? ?*當(dāng)然byte,short,char也可以直接寫在switch和case后面,因它們可以進(jìn)行自動類型轉(zhuǎn)換。
?? ??? ?
?? ?*JDK6低版本的,switch和case后面只能探測int類型。

8.case可以合并
?? ?
?? ?int i=10;
? ? switch(i){
?? ??? ?case 1:case2:case3:case10:
?? ?}
*/

public class switch01 {public static void main(String[] args){ /*數(shù)值類型錯誤,大容量向小容量轉(zhuǎn)換需要強(qiáng)制轉(zhuǎn)換 //編譯報(bào)錯long a=10L;int b=a;long x=10L;switch(x){}?? ??? ? *///解決編譯報(bào)錯 //實(shí)際上是進(jìn)行一次強(qiáng)制轉(zhuǎn)換 long x=100L; switch((int) x){}//同樣 byte b=10; switch(b){}short s=10; switch(s){}//string類型 String uesrname="zansan"; swtich(username){}//關(guān)于case穿透 /* 需求:接受用戶的輸入 1表示星期一,以此類推 */java.util.Scanner s=new java.util.Scanner(System.in); System.out.print("請輸入數(shù)字"); int num=s.nextInt(); switch(num){ case 1:System.out.println("星期一");break;//當(dāng)break;不存在的時候,輸入1,會顯示星期一和星期二//雖然輸入1沒有匹配下面的2,但是會執(zhí)行2 case 2:System.out.println("星期二");break;?? ? case 3:System.out.println("星期三");break; case 4:System.out.println("星期四");break;?? ? case 5:System.out.println("星期五");break; case 6:System.out.println("星期六");break;?? ? case 7:System.out.println("星期日");break; default;System.out.println("對不起,您輸入的數(shù)字錯誤"); }//switch確實(shí)可以探測String類型,這是java7的新特性//例如: java.util.Scanner s=new java.util.Scanner(System.in);System.out.println("請輸入今天星期幾");String dayWeek=s.next();//從此處檢測switch(dayWeek){case"星期一":System.out.println(1); case"星期二":System.out.println(2); case"星期三":System.out.println(3); default:System.out.println("不合法");}//用switch實(shí)現(xiàn)計(jì)算機(jī)中的+-* /% /*實(shí)現(xiàn)思路:1.選擇所有數(shù)據(jù)從鍵盤輸入2.使用switch語句進(jìn)行判斷3.需要從控制臺輸入三次:*第一個數(shù)字*運(yùn)算符*第二個數(shù)字最終在控制臺上是這樣的一個場景:歡迎使用計(jì)算機(jī)請輸入第一個數(shù)字:10請輸入運(yùn)算符:+-* / %請輸入第二個數(shù)字:20運(yùn)算結(jié)果:10+20=30*/ java.util.Scanner s=new java.util.Scanner(System.in); System.out.println("請輸入第一個數(shù)字"); int a=s.nextInt(); System.out.println("請輸入一個運(yùn)算符"); String b=s.next(); System.out.println("請輸入第二個數(shù)字"); int c=s.nextInt();int result=0;switch(b){case "+":result=a+c;break;case "-":result=a-c;break;case "*":rusult=a*c;break;case "/":result=a/c;break;case "%":result=a%c;break;default:System.out.println("輸入非法");System.out.println("運(yùn)算結(jié)果:"+a+b+c+"="+result);}} }

?

總結(jié)

以上是生活随笔為你收集整理的JAVA入门级教学之(switch语句)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。