JAVA基礎(chǔ)知識(shí)-day03 判斷&循環(huán)&選擇語句

?一、流程控制

1.1?順序結(jié)構(gòu):根據(jù)代碼編寫的順序,從上到下運(yùn)行

二、判斷語句

2.1?判斷語句1--if

2.1.1?第一種格式:

?? ??? ?if(關(guān)系表達(dá)式){?

?? ?? ??? ??? ??語句體;?

?? ??? ?}

?? ??? ?執(zhí)行流程:

?? ??? ?首先判斷關(guān)系表達(dá)式看其結(jié)果是true還是false?

?? ??? ?如果是true就執(zhí)行語句體?

?? ??? ?如果是false就不執(zhí)行語句體

2.1.2?第二種格式:

?? ??? ?if(關(guān)系表達(dá)式) {

?? ??? ??? ??? ??語句體1;?

?? ??? ?}else {?

?? ??? ??? ??? ??語句體2;

?? ??? ??}

?? ??? ?執(zhí)行流程:首先判斷關(guān)系表達(dá)式看其結(jié)果是true還是false?

?? ??? ?如果是true就執(zhí)行語句體1?

?? ??? ?如果是false就執(zhí)行語句體2

2.1.3?第三種格式:

?? ??? ?if (判斷條件1) {

?? ??? ??? ??執(zhí)行語句1;?

?? ?? ??} else if (判斷條件2) {

?? ??? ??? ??執(zhí)行語句2;?

?? ??? ?}

?? ??? ??...?

?? ??? ?}else if (判斷條件n) {

?? ??? ???? ?執(zhí)行語句n;?

?? ??? ?} else {

?? ??? ??? ??執(zhí)行語句n+1;?

?? ??? ?}

?? ??? ?執(zhí)行流程:首先判斷關(guān)系表達(dá)式1看其結(jié)果是true還是false?

?? ??? ?如果是true就執(zhí)行語句體1

?? ??? ?如果是false就繼續(xù)判斷關(guān)系表達(dá)式2看其結(jié)果是true還是false?

?? ??? ?如果是true就執(zhí)行語句體2?

?? ??? ?如果是false就繼續(xù)判斷關(guān)系表達(dá)式…看其結(jié)果是true還是false?

?? ??? ?…?

?? ??? ?如果沒有任何關(guān)系表達(dá)式為true,就執(zhí)行語句體n+1。

三、選擇語句

3.1?選擇語句--switch

3.1.1?switch語句格式:

?? ??? ??switch(表達(dá)式) {

?? ??? ??? ??? ??case 常量值1:?

?? ??? ??? ??? ??? ??? ?語句體1;?

?? ??? ??? ??? ??? ??? ?break;?

?? ??? ??? ?? ? ?case 常量值2:?

?? ??? ??? ??? ??? ??? ?語句體2;?

?? ??? ??? ??? ??? ??? ?break;?

?? ??? ??? ??? ??...

?? ??? ??? ??? ??default:?

?? ??? ??? ??? ??? ??? ?語句體n+1;?

?? ??? ??? ??? ??? ??? ?break;?

?? ?? ? ??}

?? ??? ?執(zhí)行流程:首先計(jì)算出表達(dá)式的值

?? ??? ?其次,和case依次比較,一旦有對(duì)應(yīng)的值,就會(huì)執(zhí)行相應(yīng)的語句,在執(zhí)行的過程中,? ? ? ? ? 遇到break就會(huì)結(jié)束。?

?? ??? ?最后,如果所有的case都和表達(dá)式的值不匹配,就會(huì)執(zhí)行default語句體部分,然后程 ?? ??? ?序結(jié)束掉。

3.1.2 注意事項(xiàng):

1、switch語句中,表達(dá)式的數(shù)據(jù)類型,可以是byte,short,int,char,enum(枚舉),JDK7后可以接收字符串。

2、在switch語句中,如果case的后面不寫break,將出現(xiàn)穿透現(xiàn)象,也就是不會(huì)在判斷下一個(gè)case的值,直接向后運(yùn)行,直到遇到break,或者整體switch結(jié)束。?因此在編寫switch語句時(shí),必須要寫上break。

四、循環(huán)語句

4.1?循環(huán)結(jié)構(gòu)的基本組成部分,一般可以分成四部分:

?? ??? ?1. 初始化語句:在循環(huán)開始最初執(zhí)行,而且只做唯一一次。

?? ??? ?2. 條件判斷:如果成立,則循環(huán)繼續(xù);如果不成立,則循環(huán)退出。

?? ??? ?3. 循環(huán)體:重復(fù)要做的事情內(nèi)容,若干行語句。

?? ??? ?4. 步進(jìn)語句:每次循環(huán)之后都要進(jìn)行的掃尾工作,每次循環(huán)結(jié)束之后都要執(zhí)行一次。

4.2?循環(huán)語句1--for

4.2.1?for(初始化表達(dá)式;布爾表達(dá)式;步進(jìn)表達(dá)式){?

?? ??? ??? ??? ?循環(huán)體}

?? ?? ? ?執(zhí)行流程:

4.3循環(huán)語句2--while

4.3.1 while循環(huán)語句格式:?

?? ??? ??? ?初始化表達(dá)式

?? ??? ??? ?while(布爾表達(dá)式){

?? ??? ??? ??? ??循環(huán)體

?? ??? ??? ?? ? ?步進(jìn)表達(dá)式

?? ??? ??? ?}

? ??? ? 執(zhí)行流程:

4.4循環(huán)語句3--do...while

4.4.1do...while循環(huán)格式:??

?? ??? ??? ?初始化表達(dá)式

?? ??? ??? ?do{

?? ??? ??? ??? ??循環(huán)體

?? ??? ??? ?? ? ?步進(jìn)表達(dá)式

?? ??? ?? ? ?}while(布爾表達(dá)式);

4.4.2?do...while循環(huán)的特點(diǎn):無條件執(zhí)行一次循環(huán)體,即使我們將循環(huán)條件直接寫成false,也依然會(huì)循環(huán)一次。這樣的循環(huán)具有一定的風(fēng)險(xiǎn)性,因此初學(xué)者不建議使用do...while循環(huán)。

4.5?for和while的小區(qū)別:控制條件語句所控制的那個(gè)變量,在for循環(huán)結(jié)束后,就不能再被訪問到了,而while循環(huán)結(jié)束還可以繼續(xù)使用,如果你想繼續(xù)使用,就用while,否則推薦使用for。原因是for循環(huán)結(jié)束,該變量就從內(nèi)存中消 失,能夠提高內(nèi)存的使用效率。 在已知循環(huán)次數(shù)的時(shí)候使用推薦使用for,循環(huán)次數(shù)未知的時(shí)推薦使用while。

4.6?跳出語句

4.6.1?break使用場(chǎng)景:終止switch或者循環(huán)

4.6.2?continue使用場(chǎng)景:結(jié)束本次循環(huán),繼續(xù)下一次的循環(huán)

五、擴(kuò)展知識(shí)點(diǎn)

5.1 死循環(huán):也就是循環(huán)中的條件永遠(yuǎn)為true,死循環(huán)是永不結(jié)束的循環(huán)。例如:while(true){}。

5.2?嵌套循環(huán):是指一個(gè)循環(huán)的循環(huán)體是另一個(gè)循環(huán)。比如for循環(huán)里面還有一個(gè)for循環(huán),就是嵌套循環(huán)??偣驳难h(huán)次數(shù)=外循環(huán)次數(shù)*內(nèi)循環(huán)次數(shù)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容