簡(jiǎn)析Java中return和break的區(qū)別

break語(yǔ)句的使用場(chǎng)合主要是switch語(yǔ)句和循環(huán)結(jié)構(gòu)。在循環(huán)結(jié)構(gòu)中使用break語(yǔ)句,如果執(zhí)行了break語(yǔ)句,那么就退出循環(huán),接著執(zhí)行循環(huán)結(jié)構(gòu)下面的第一條語(yǔ)句。如果在多重嵌套循環(huán)中使用break語(yǔ)句,當(dāng)執(zhí)行break語(yǔ)句的時(shí)候,退出的是它所在的循環(huán)結(jié)構(gòu),對(duì)外層循環(huán)沒(méi)有任何影響。如果循環(huán)結(jié)構(gòu)里有switch語(yǔ)句,并且在switch語(yǔ)句中使用了break語(yǔ)句,當(dāng)執(zhí)行switch語(yǔ)句中的break語(yǔ)句時(shí),僅退出switch語(yǔ)句,不會(huì)退出外面的循環(huán)結(jié)構(gòu)。

continue語(yǔ)句是這5種結(jié)束循環(huán)的方式中最特殊的,因?yàn)樗](méi)有真的退出循環(huán),而是只結(jié)束本次循環(huán)體的執(zhí)行,所以在使用continue的時(shí)候要注意這一點(diǎn)。

如果在程序中遇到return語(yǔ)句,那么代碼就退出該函數(shù)的執(zhí)行,返回到函數(shù)的調(diào)用處,如果是main()函數(shù),那么結(jié)束整個(gè)程序的運(yùn)行。

下面就對(duì)三者的區(qū)別通過(guò)案例來(lái)簡(jiǎn)要說(shuō)明:

1、break

break :跳出當(dāng)前循環(huán);但是如果是嵌套循環(huán),則只能跳出當(dāng)前的這一層循環(huán),只有逐層break才能跳出所有循環(huán);

for (int i = 0; i < 10; i++) {

if (i == 6) {

break;

// 在執(zhí)行i==6時(shí)強(qiáng)制終止循環(huán),i==6不會(huì)被執(zhí)行

}

System.out.println(i);

}

輸出結(jié)果為0 1 2 3 4 5 ;6以后的都不會(huì)輸出

2、continue

continue:終止當(dāng)前循環(huán),但是不跳出循環(huán)(在循環(huán)中continue后面的語(yǔ)句是不會(huì)執(zhí)行了),繼續(xù)往下根據(jù)循環(huán)條件執(zhí)行循環(huán)。

for (int i = 0; i < 10; i++) {

if (i == 6)? {

continue;

// i==6不會(huì)被執(zhí)行,而是被中斷了

}

System.out.println(i);

}

輸出結(jié)果為0 1 2 3 4 5 7 8 9;只有6沒(méi)有輸出


3、return

(1).return 從當(dāng)前的方法中退出,返回到該調(diào)用的方法的語(yǔ)句處,繼續(xù)執(zhí)行。

(2).return 返回一個(gè)值給調(diào)用該方法的語(yǔ)句,返回值的數(shù)據(jù)類(lèi)型必須與方法的聲明中的返回值的類(lèi)型一致。

(3). return后面也可以不帶參數(shù),不帶參數(shù)就是返回空,其實(shí)主要目的就是用于想中斷函數(shù)執(zhí)行,返回調(diào)用函數(shù)處。

特別注意:返回值為void的方法,從某個(gè)判斷中跳出,必須用return.

下面再詳細(xì)辨析一下return和break語(yǔ)句作用的區(qū)別

return 語(yǔ)句的作用

(1) return 從當(dāng)前的方法中退出,返回到該調(diào)用的方法的語(yǔ)句處,繼續(xù)執(zhí)行。

(2) return 返回一個(gè)值給調(diào)用該方法的語(yǔ)句,返回值的數(shù)據(jù)類(lèi)型必須與方法的聲明中的返回值的類(lèi)型一致。

(3) return后面也可以不帶參數(shù),不帶參數(shù)就是返回空,其實(shí)主要目的就是用于想中斷函數(shù)執(zhí)行,返回調(diào)用函數(shù)處。

break語(yǔ)句的作用

(1)break在循環(huán)體內(nèi),強(qiáng)行結(jié)束循環(huán)的執(zhí)行,也就是結(jié)束整個(gè)循環(huán)過(guò)程,不在判斷執(zhí)行循環(huán)的條件是否成立,直接轉(zhuǎn)向循環(huán)語(yǔ)句下面的語(yǔ)句。

(2)當(dāng)break出現(xiàn)在循環(huán)體中的switch語(yǔ)句體內(nèi)時(shí),其作用只是跳出該switch語(yǔ)句體。

最后編輯于
?著作權(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)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

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