淺談選擇結(jié)構(gòu)if語句和switch語句的區(qū)別
1.選擇結(jié)構(gòu)if語句格式及其使用
A:if語句的格式:
if(比較表達(dá)式1) {
語句體1;
}else if(比較表達(dá)式2) {
語句體2;
}else if(比較表達(dá)式3) {
語句體3;
}
...
else {
語句體n+1;
}
B:執(zhí)行流程:
首先計算比較表達(dá)式1看其返回值是true還是false,
如果是true,就執(zhí)行語句體1,if語句結(jié)束。
如果是false,接著計算比較表達(dá)式2看其返回值是true還是false,
如果是true,就執(zhí)行語句體2,if語句結(jié)束。
如果是false,接著計算比較表達(dá)式3看其返回值是true還是false,
如果都是false,就執(zhí)行語句體n+1。
C:注意事項:最后一個else可以省略,但是建議不要省略,可以對范圍外的錯誤值提示
eg:
import java.util.Scanner;
class Demo_If {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in); //鍵盤輸入,
while(true) {
System.out.println("請您輸入成績"); //提示輸入
int a = sc.nextInt(); //鍵盤輸入用int類型接收
if (a>100|a<0) { //死循環(huán),方便測試
System.out.println("您輸入的成績有誤");
}else if (a>=90&a<=100) {
System.out.println("A等");
}else if (a>=80&a<90) {
System.out.println("B等");
}else if (a>=70&a<80) {
System.out.println("C等");
}else if (a>=60&a<70) {
System.out.println("D等");
}else if (a<60) {
System.out.println("E等");
}else {
System.out.println("您輸入的成績有誤");
}
}
}
}
2.選擇結(jié)構(gòu)switch語句格式及其使用
A:switch格式:
switch(表達(dá)式) {
case 值1:
語句體1;
break;
case 值2:
語句體2;
break;
…
default:
語句體n+1;
break;
}
B:switch語句的格式解釋
(基本數(shù)據(jù)類型,只要能提升為int的都可以,引用數(shù)據(jù)類型中的枚舉(JDK1.5)和String(JDK1.7))
C:執(zhí)行流程
先計算表達(dá)式的值
然后和case后面的匹配,如果有就執(zhí)行對應(yīng)的語句,否則執(zhí)行default控制的語句
eg
import java.util.*;
class Dome_If3{
public static void main(String[] args) {
//System.out.println("Hello World!");
Scanner sc =new Scanner(System.in); //鍵盤錄入
while(true) { //死循環(huán)方便測試
System.out.println("請您 輸入要轉(zhuǎn)換的星期數(shù)"); //鍵盤錄入提示
in week = sc.nextInt();
switch(week) {
case 1:
System.out.println("星期1");
break;
case 2:
System.out.println("星期2");
break;
case 3:
System.out.println("星期3");
break;
case 4:
System.out.println("星期4");
break;
case 5:
System.out.println("星期5");
break;
case 6:
System.out.println("星期6");
break;
case 7:
System.out.println("星期天");
break;
default:
System.out.println("您輸入的數(shù)字有誤,請重新輸入");
}
}
}
}
3:總結(jié)switch語句和if語句的各自使用場景
switch建議判斷固定值的時候用
if建議判斷區(qū)間或范圍的時候用
*用switch能做的,用if都能做,單反過來則不行
以上這篇淺談選擇結(jié)構(gòu)if語句和switch語句的區(qū)別就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
劍指Offer之Java算法習(xí)題精講N叉樹的遍歷及數(shù)組與字符串
跟著思路走,之后從簡單題入手,反復(fù)去看,做過之后可能會忘記,之后再做一次,記不住就反復(fù)做,反復(fù)尋求思路和規(guī)律,慢慢積累就會發(fā)現(xiàn)質(zhì)的變化2022-03-03
SpringBoot整合WebSocket實現(xiàn)后端向前端發(fā)送消息的實例代碼
WebSocket使得客戶端和服務(wù)器之間的數(shù)據(jù)交換變得更加簡單,允許服務(wù)端主動向客戶端推送數(shù)據(jù),下面這篇文章主要給大家介紹了關(guān)于SpringBoot整合WebSocket實現(xiàn)后端向前端發(fā)送消息的相關(guān)資料,需要的朋友可以參考下2023-03-03
Intellij IDEA 2018配置Java運行環(huán)境的方法步驟
這篇文章主要介紹了Intellij IDEA 2018配置Java運行環(huán)境的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09
SpringBoot開發(fā)項目,引入JPA找不到findOne方法的解決
這篇文章主要介紹了SpringBoot開發(fā)項目,引入JPA找不到findOne方法的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-11-11
java?數(shù)組實現(xiàn)學(xué)生成績統(tǒng)計教程
這篇文章主要介紹了java?數(shù)組實現(xiàn)學(xué)生成績統(tǒng)計教程,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-12-12
Spring MVC的優(yōu)點與核心接口_動力節(jié)點Java學(xué)院整理
這篇文章主要介紹了Spring MVC的優(yōu)點與核心接口,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-08-08

