第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么我這個會出錯

package com.imooc.test;

public class TryCatchTest {

?? ?/**
?? ? * @param args
?? ? */
?? ?public static void main(String[] args) {
?? ??? ?// TODO Auto-generated method stub
?? ??? ?TryCatchTest tct=new TryCatchTest();
?? ??? ?int result=tct.test();
?? ??? ?System.out.println("test()fangfa執(zhí)行完畢,返回值為"+result);

?? ?}
?? ?public int test(){
?? ??? ?int divider=10;
?? ??? ?int result=100;
?? ??? ?try{
?? ??? ??? ?while(divider>-1){
?? ??? ??? ??? ?divider--;
?? ??? ??? ??? ?result=result+100/divider;
?? ??? ??? ??? ?return result;
?? ??? ??? ?}
?? ??? ?}catch(Exception e){
?? ??? ??? ?e.printStackTrace();
?? ??? ??? ?System.out.println("循環(huán)拋出異常了");
?? ??? ??? ?return -1;
?? ??? ?}

?? ??? ?
?? ??? ?}

?? ??? ?

}

正在回答

6 回答

return 寫在while循環(huán)里面,導(dǎo)致只執(zhí)行一次循環(huán),就return 結(jié)束了。

package?com.imooc.test;

public?class?TryCatchTest?{

????/**
?????*?@param?args
?????*/
????public?static?void?main(String[]?args)?{
????????//?TODO?Auto-generated?method?stub
????????TryCatchTest?tct?=?new?TryCatchTest();
????????int?result?=?tct.test();
????????System.out.println("test()fangfa執(zhí)行完畢,返回值為"?+?result);

????}

????public?int?test()?{
????????int?divider?=?10;
????????int?result?=?100;
????????try?{
????????????while?(divider?>?-1)?{
????????????????divider--;
????????????????result?=?result?+?100?/?divider;
????????????}
????????????return?result;
????????}?catch?(Exception?e)?{
????????????e.printStackTrace();
????????????System.out.println("循環(huán)拋出異常了");
????????????return?-1;
????????}
????}

}


1 回復(fù) 有任何疑惑可以回復(fù)我~

try塊中 return result應(yīng)該放在 while 循環(huán)的外面

try{
?????while(divider>-1){
?????????divider--;
?????????result=result+100/divider;
?????}
?????return?result;
?}catch(Exception?e){
?????e.printStackTrace();
?????System.out.println("循環(huán)拋出異常了");
?????return?-1;
?}

?


1 回復(fù) 有任何疑惑可以回復(fù)我~

return result;
這句代碼應(yīng)該寫在循環(huán)外面,
你寫在循環(huán)里面了,
當(dāng)寫在循環(huán)內(nèi)時,循環(huán)執(zhí)行到return result;
就立即結(jié)束該方法了,就不會引發(fā)異常了

1 回復(fù) 有任何疑惑可以回復(fù)我~

沒有返回值啊 ? 在捕獲異常塊里面寫返回值是不行啊 ?萬一沒有異常呢??那就沒有返回值了啊


0 回復(fù) 有任何疑惑可以回復(fù)我~

錯誤的信息是什么?。?br />

0 回復(fù) 有任何疑惑可以回復(fù)我~

public int test(){

? ? ? ? int divider=10;

? ? ? ? int result=100;

? ? ? ? try{

? ? ? ? ? ? while(divider>-1){

? ? ? ? ? ? ? ? divider--;

? ? ? ? ? ? ? ? result=result+100/divider;

? ? ? ? ? ? ? ? return result;

? ? ? ? ? ? }

? ? ? ? }catch(Exception e){

? ? ? ? ? ? e.printStackTrace();

? ? ? ? ? ? System.out.println("循環(huán)拋出異常了");

? ? ? ? ? ? return -1;

? ? ? ? }

//方法的結(jié)尾處需要一個返回值,而不是在try catch內(nèi)。

return 0;

}


0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消
Java入門第三季
  • 參與學(xué)習(xí)       409775    人
  • 解答問題       4546    個

Java中你必須懂得常用技能,不容錯過的精彩,快來加入吧

進入課程

為什么我這個會出錯

我要回答 關(guān)注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號