问答详情
源自:1-3 Java中通过案例学习 try...catch...finally

关于return的疑问,为何接收不到return所返回的值。

https://img.mukewang.com/5acc261b0001e8d407530425.jpg

public class FunctionException {


public static void main(String[] args) {

FunctionException tt=new FunctionException();

tt.function();

int divisor=tt.function();

int Divisor=tt.function();

System.out.println("接收返还值Divisor"+Divisor);

System.out.println("接收返还值divisor"+divisor);

}

public int function() {

try {

int Divisor=100;

int divisor=3;

int JS;

do {

JS=Divisor/divisor;

divisor--;

} while (divisor>-1);

return Divisor;

} catch (Exception e) {

// TODO: handle exception

e.printStackTrace();

System.out.println("出现了一个错误");

}

return -1;

}

}


提问者:qq_M丶T_0 2018-04-10 10:49

个回答

  • 单纯的叶子
    2018-04-10 10:59:34
    已采纳

    result result在循环外,只有while循环完才会返回result,  但此循环必定触发异常,循环到divisor=0时,跳到catch,执行return -1;是不会执行return result的

  • Z华L
    2018-06-08 18:26:40

    正有此疑问,谢谢