1:switch語句(掌握)
(1)格式:
switch(表達式) {
case 值1:
語句體1;
break;
case 值2:
語句體2;
break;
...
default:
語句體n+1;
break;
}
格式解釋說明:
switch:說明這是switch語句。
表達式:可以是byte,short,int,char
JDK5以后可以是枚舉
JDK7以后可以是字符串
case:后面的值就是要和表達式進行比較的值
break:表示程序到這里中斷,跳出switch語句
default:如果所有的情況都不匹配,就執(zhí)行這里,相當于if語句中的else
(2)面試題
switch語句的表達式可以是byte嗎?可以是long嗎?可以是String嗎?
可以,不可以,JDK7以后可以
(3)執(zhí)行流程:
A:首先計算表達式的值
B:和每一個case進行匹配,如果有就執(zhí)行對應的語句體,看到break就結束。
C:如果沒有匹配,就執(zhí)行default的語句體n+1。
(4)注意事項:
A:case后面只能是常量,不能是變量,而且,多個case后面的值不能出現相同的
B:default可以省略嗎?
可以省略,但是不建議,因為它的作用是對不正確的情況給出提示。
特殊情況:
case就可以把值固定。
A,B,C,D
C:break可以省略嗎?
可以省略,但是結果可能不是我們想要的。
會出現一個現象:case穿透。
最終我們建議不要省略
D:default一定要在最后嗎?
不是,可以在任意位置。但是建議在最后。
E:switch語句的結束條件
a:遇到break就結束了
b:執(zhí)行到末尾就結束了
(5)案例:
A:鍵盤錄入一個數字(1-7),輸出對應的星期幾。
B:單項選擇題
C:鍵盤錄入一個字符串的問題
String s = sc.nextLine();
D:根據給定的月份,輸出對應的季節(jié)
(6)if語句和switch語句各自的場景
A:if
針對boolean類型的判斷
針對一個范圍的判斷
針對幾個常量的判斷
B:switch
針對幾個常量的判斷
2:循環(huán)語句(掌握)
(1)有三種:for,while,do...while
(2)for循環(huán)語句
A:格式
for(初始化語句;判斷條件語句;控制條件語句){
循環(huán)體語句;
}
執(zhí)行流程:
a:執(zhí)行初始化語句
b:執(zhí)行判斷條件語句
如果這里是true,就繼續(xù)
如果這里是false,循環(huán)就結束
c:執(zhí)行循環(huán)體語句
d:執(zhí)行控制條件語句
e:回到b
B:注意事項
a:判斷條件語句無論簡單還是復雜,結果是boolean類型
b:循環(huán)體語句如果是一條,可以省略大括號,但是不建議
c:有分號就沒有左大括號,有左大括號就沒有分號
C:案例
a:輸出10次HelloWorld
b:輸出1-10的數據
c:輸出10-1的數據
d:求1-10的和
e:求1-100的和,求1-100的偶數和,求1-100的奇數和
f:求5的階乘
g:在控制臺打印水仙花數
h:統(tǒng)計水仙花個數
i:改進版的回文數
一個五位數
個位 = 萬位
十位 = 千位
個位 + 十位 + 千位 + 萬位 = 百位
j:統(tǒng)計1-1000之間同時滿足如下條件的數據有多少個
x%3==2
x%5==3
x%7==2
(3)while循環(huán)
A:基本格式
while(判斷條件語句) {
循環(huán)體語句;
}
擴展格式:
初始化語句;
while(判斷條件語句){
循環(huán)體語句;
控制條件語句;
}
通過查看這個格式,我們就知道while循環(huán)可以和for循環(huán)等價轉換。
B:while的練習
把for語句的練習用while改進
C:for和while的區(qū)別
a:使用上的區(qū)別
for語句的那個控制條件變量,在循環(huán)結束后不能在使用了。
而while的可以繼續(xù)使用。
b:理解上的區(qū)別
for適合于一個范圍的判斷
while適合次數不明確的
舉例:吃葡萄
D:案例:
a:珠穆朗瑪峰問題
b:小芳存錢問題(break以后才能做)
(4)do...while循環(huán)
A:基本格式
do {
循環(huán)體語句;
}while(判斷條件語句);
擴展格式:
初始化語句;
do {
循環(huán)體語句;
控制條件語句;
}while(判斷條件語句);
通過查看格式,我們就可以看出其實三種循環(huán)的格式可以是統(tǒng)一的。
B:三種循環(huán)的區(qū)別
a:do...while循環(huán)至少執(zhí)行一次循環(huán)體
b:for和while必須先判斷條件是否是true,然后后才能決定是否執(zhí)行循環(huán)體
(5)循環(huán)使用的注意事項(死循環(huán))
A:一定要注意修改控制條件,否則容易出現死循環(huán)。
B:最簡單的死循環(huán)格式
a:while(true){...}
b:for(;;){}
3:控制跳轉語句(掌握)
(1)break:中斷的意思
A:用在循環(huán)和switch語句中,離開此應用場景無意義。
B:作用
a:跳出單層循環(huán)
b:跳出多層循環(huán),需要標簽語句的配合
(2)continue:繼續(xù)
A:用在循環(huán)中,離開此應用場景無意義。
B:作用
a:跳出單層循環(huán)的一次,可以繼續(xù)下一次
C:填空題
for(int x=1; x<=10; x++) {
if(x%3 == 0) {
//補齊代碼
}
System.out.println("Java基礎班");
}
如何讓控制臺輸出2次:Java基礎班
如何讓控制臺輸出7次:Java基礎班
如何讓控制臺輸出13次:Java基礎班
(3)return:返回
A:用于結束方法的,后面還會在繼續(xù)講解和使用。
B:一旦遇到return,程序就不會在繼續(xù)往后執(zhí)行。