大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動(dòng)力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 hot資訊 switch語句語法及原理

switch語句語法及原理

更新時(shí)間:2020-10-14 17:05:03 來源:動(dòng)力節(jié)點(diǎn) 瀏覽2877次

在一段代碼編程中,肯定會(huì)用到不同的語法結(jié)構(gòu),java中的語法結(jié)構(gòu)在整個(gè)程序中是十分重要的,像是一座建筑物的主框架一樣。switch語句是選擇語句中的一種,這篇文章總結(jié)了switch語句語法及原理的知識(shí),適合java零基礎(chǔ)的朋友們學(xué)習(xí)。

image.png

Switch語句和if語句一樣,都屬于選擇語句(分支語句)通過對(duì)給定的條件進(jìn)行判斷,從而決定執(zhí)行兩個(gè)或多個(gè)分支中的哪一支。因此,在編寫選擇語句之前,應(yīng)該首先明確判斷條件是什么,并確定當(dāng)判斷結(jié)果為“真”或“假”時(shí)應(yīng)分別執(zhí)行什么樣的操作/算法。

switch語句基本語法格式,具體如下:

switch (表達(dá)式){
????case 目標(biāo)值1:
????????執(zhí)行語句1
????????break;
????case 目標(biāo)值2:
????????執(zhí)行語句2
????????break;
????......
????case 目標(biāo)值n:
????????執(zhí)行語句n
????????break;
????default:
????????執(zhí)行語句n+1
????????break;
}

在上面的格式中,switch語句將表達(dá)式的值與每個(gè)case中的目標(biāo)值進(jìn)行匹配,如果找到了匹配的值,會(huì)執(zhí)行對(duì)應(yīng)case后的語句,如果沒找到任何匹配的值,就會(huì)執(zhí)行default后的語句。switch語句中的break關(guān)鍵字的作用是跳出switch語句。

需要注意的是,在switch語句中的表達(dá)式只能是byte、short、char、int類型的值,如果傳入其它類型的值,程序會(huì)報(bào)錯(cuò)。但上述說法并不嚴(yán)謹(jǐn),實(shí)際上在JDK5.0中引入的新特性enum枚舉也可以作為switch語句表達(dá)式的值,在JDK7.0中也引入了新特性,switch語句可以接收一個(gè)String類型的值。

switch語句原理是:

(1)拿switch語句中的值與第一個(gè)case中值比較的時(shí)候,如果相同,則執(zhí)行該分支中的java語句,然后遇到"break"語句,switch語句就結(jié)束了,如果第一個(gè)不相等,則繼續(xù)與后面的case值進(jìn)行比較。

(2)如果分支執(zhí)行了,但是分支最后沒有"break",此時(shí)會(huì)發(fā)生case穿透現(xiàn)象,也就是說下一個(gè)分支也不再進(jìn)行匹配,直接進(jìn)入下一個(gè)分支執(zhí)行,直到遇到"break"為止。

(3)所有的case都沒有匹配成功,那么最后default分支會(huì)執(zhí)行。

最后來看一個(gè)使用了switch語句語法及原理的代碼案例:

public class SwitchTest02{
????public static void main(String[] args){
????????java.util.Scanner s=new java.util.Scanner(System.in);
????????System.out.print("請(qǐng)輸入考生成績:");
????????double score=s.nextDouble();
????????if(score<0 || score>100){
????????????System.out.println("您輸入的學(xué)生成績不合法");
????????????return;
????????}
????????//grade的值可能是:0 1 2 3 4 5 6 7 8 9 10
????????//0-5不及格
????????//6 及格
????????//7 中
????????//8 良
????????//9 10 優(yōu)
????????int grade=(int)(score/10);
????????String str="不及格";
????????switch(grade){
????????case 10:case 9://case可以合并
????????????str="優(yōu)";
????????????break;
????????case 8:
????????????str="良";
????????????break;
????????case 7:
????????????str="中";
????????????break;
????????case 6:
????????????str="及格";
????????????break;
????????}
????????System.out.println("該學(xué)生成績等級(jí)為:"+str);
????}
}

Switch語句是常見也常用的一種選擇語句,所以這篇文章中對(duì)switch語句語法及原理的介紹,是java零基礎(chǔ)的朋友們必須要掌握的知識(shí),對(duì)switch的原理和語法結(jié)構(gòu)理解有更深入的理解和掌握,才能在實(shí)戰(zhàn)過程中自如的應(yīng)用switch語句。

提交申請(qǐng)后,顧問老師會(huì)電話與您溝通安排學(xué)習(xí)

免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 久久久久久久久影院 | 国产96福利视频在线观看 | 在线观看日本中文字幕 | 欧美精品在线一区 | 成人a免费α片在线视频网站 | 免费看成人播放毛片 | 不卡高清av手机在线观看 | 97国产在线观看 | 日本成人久久 | 亚洲一区二区三区网站 | 九九久久久 | 国产成人高清 | 国产成人一区在线播放 | 亚洲欧洲精品视频在线观看 | 91视频免费观看 | 四虎影视国产精品亚洲精品hd | 婷婷四房综合激情五月在线 | 欧美成人交tv免费观看 | 亚洲精品久久久中文字 | 欧美日韩亚洲视频 | 中文字幕一二三区乱码老 | 99热久久国产综合精品久久国产 | 色婷婷天天综合在线 | 久久精品日本免费线 | 欧美成人一区二区三区 | 一级特黄aaa大片免费看 | 亚洲美女在线播放 | 在线免费观看国产精品 | 欧美乱妇高清无乱码视频在线 | 欧美在线观看一区二区 | 狠狠夜夜 | 四虎新网址 | www.四虎网站 | 国产观看精品一区二区三区 | 色久综合大榴莲 | 日本精品一区二区三本中文 | 伊人狠狠丁香婷婷综合色 | 国产成人精品一区二三区2022 | 色综合网亚洲精品久久 | 奇米在线视频 | 国产欧美精品一区二区三区四区 |