這個(gè)題目一般沒(méi)有人問(wèn),要問(wèn)也是在一個(gè)案例里面把他們都應(yīng)用上問(wèn)你會(huì)輸出什么值,我們來(lái)逐個(gè)講講:
Java中return的作用
《Java編程思想:第四版》介紹:return語(yǔ)句作為一個(gè)無(wú)條件的分支,無(wú)需判斷條件即可發(fā)生。這本書不錯(cuò)大家可以網(wǎng)上找找電子版的,如果沒(méi)有找到可以來(lái)找我。
return語(yǔ)句主要有兩個(gè)用途:
一、是用來(lái)表示一個(gè)方法返回的值(假定沒(méi)有void返回值)。
二、是指它導(dǎo)致該方法退出,并返回那個(gè)值。根據(jù)方法的定義,每一個(gè)方法都有返回類型,返回類型可以是基本類型或引用類型。同時(shí)每個(gè)方法都必須有個(gè)結(jié)束標(biāo)志,因此,就出現(xiàn)了return。當(dāng)方法的返回類型為void時(shí),有個(gè)隱含的return語(yǔ)句,可以省略不寫。
return語(yǔ)句和其他控制結(jié)束語(yǔ)句的區(qū)別:
Java中結(jié)束語(yǔ)句主要有四類:return,break,continue。
(1)return語(yǔ)句:是指結(jié)束該方法,繼續(xù)執(zhí)行方法后的語(yǔ)句。
(2)break語(yǔ)句:是指在循環(huán)中直接退出循環(huán)語(yǔ)句(for,while,do-while,foreach),break之后的循環(huán)體里面的語(yǔ)句也執(zhí)行。
(3)continue語(yǔ)句:是指在循環(huán)中中斷該次循環(huán)語(yǔ)句(for,while,do-while,foreach),本次循環(huán)體中的continue之后語(yǔ)句不執(zhí)行,直接跳到下次循環(huán)。
java中break和continue可以跳出指定循環(huán),break和continue之后不加任何循環(huán)名則默認(rèn)跳出其所在的循環(huán),在其后加指定循環(huán)名,則可以跳出該指定循環(huán)(指定循環(huán)一般為循環(huán)嵌套的外循環(huán))。
break在for循環(huán)語(yǔ)句中的使用:
使用break的場(chǎng)景有兩種::
一、switch語(yǔ)句中
二、循環(huán)語(yǔ)句。
continue在for循環(huán)語(yǔ)句中的使用:
當(dāng)只有一層循環(huán)時(shí),結(jié)束當(dāng)前循環(huán)的本次循環(huán),當(dāng)有循環(huán)嵌套時(shí),結(jié)束本層循環(huán)的本次循環(huán);
return在try-catch-finally語(yǔ)句中的使用:
若在 try或catch語(yǔ)句里面有return語(yǔ)句,finally語(yǔ)句和return語(yǔ)句的執(zhí)行順序問(wèn)題:
若有finally語(yǔ)句,則無(wú)論如何,都會(huì)執(zhí)行該語(yǔ)句,在try或catch中的return語(yǔ)句會(huì)將它的返回值壓入棧內(nèi),然后執(zhí)行finally語(yǔ)句。
當(dāng)finally執(zhí)行完成后,若finally語(yǔ)句里有return語(yǔ)句,則執(zhí)行return語(yǔ)句并結(jié)束。
若finally沒(méi)有return語(yǔ)句,則返回被保存的棧里的return語(yǔ)句,再執(zhí)行。
在壓棧時(shí)候,要注意壓入棧內(nèi)的值的類型,若是引用類型則引用的值會(huì)改變,若是變量值,則不會(huì)改變。
更多關(guān)于“java培訓(xùn)”的問(wèn)題,歡迎咨詢千鋒教育在線名師。千鋒教育多年辦學(xué),課程大綱緊跟企業(yè)需求,更科學(xué)更嚴(yán)謹(jǐn),每年培養(yǎng)泛IT人才近2萬(wàn)人。不論你是零基礎(chǔ)還是想提升,都可以找到適合的班型,千鋒教育隨時(shí)歡迎你來(lái)試聽(tīng)。