java跳出循環(huán)的三種方式 java中的for循環(huán)中可以使用return嗎?
java中的for循環(huán)中可以使用return嗎?你的程序沒(méi)有問(wèn)題。但是F方法不返回值。f方法有兩個(gè)返回值,一個(gè)在初始判斷中,另一個(gè)在for循環(huán)中。但其他位置沒(méi)有返回值。編譯時(shí),Java虛擬機(jī)會(huì)檢查方法
java中的for循環(huán)中可以使用return嗎?
你的程序沒(méi)有問(wèn)題。但是F方法不返回值。f方法有兩個(gè)返回值,一個(gè)在初始判斷中,另一個(gè)在for循環(huán)中。但其他位置沒(méi)有返回值。編譯時(shí),Java虛擬機(jī)會(huì)檢查方法是否能返回值。因?yàn)閒方法中有一個(gè)路徑將導(dǎo)致沒(méi)有返回值,所以在編譯時(shí)會(huì)報(bào)告一個(gè)錯(cuò)誤。因?yàn)镴可能不等于1或2。則第一次返回可能不被執(zhí)行。同樣,第二次返回可能因條件不足而無(wú)法工作。這樣,f方法就沒(méi)有返回值。編譯器檢測(cè)到此錯(cuò)誤。正確的方法是:public static long f(int j){if(j==1 | j==2){return 1}long F1=1L long F2=1L long f=0 for(int i=1I<=j-2i){f=F1=F2=f return f}return 0l//注意這一行。在這里,如果不滿足以上條件,返回0,希望對(duì)您有所幫助!}