我把try catch注释掉了,程序依然能执行,result=111, 也没报错,为啥?

来源:1-3 Java中通过案例学习 try...catch...finally

qq_OK_21

2017-12-29 18:07

package imooc2;

public class TryCatchTest {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		TryCatchTest t = new TryCatchTest();
		int result = t.test();
		System.out.println("test()方法执行完毕,输出结果: "+ result);

	}
	
	/*
	 * 创建两个变量,divider(除数)和result(结果)
	 * try catch 捕获while循环
	 * 每次循环divider减1,result = result+100/divider
	 * 如果捕获异常,打印输出“抛出异常了”,return -1
	 * 否则返回result
	 */
	public int test() {
		int divider =10;
		int result =100;
		//try {
			while(divider > -1) {
				divider--;
				result = result+100/divider;
			//}
			return result;
		//}catch(ArithmeticException e) {
			//e.printStackTrace();
			//System.out.println("循环抛出异常");
			//return -1;
		}
		return 0;
	}

}


写回答 关注

6回答

  • 刘老A
    2018-11-03 15:50:26

    while循环只运行了一次就返回了。

  • 慕雪3093085
    2018-01-08 23:10:55

    return是结束当前函数 即test02

  • 慕雪3093085
    2018-01-08 22:43:46

    while语句中嵌套了return语句 直接执行一次就返回了

  • shen931205
    2017-12-30 19:15:11

    try catch 没完全注释掉,程序又调用了一次

  • 大地1973
    2017-12-30 11:20:24

    程序执行一次“result = result+100/divider;”divider--=9,“result = result+100/divider”为result = 100+100/9=100+11=111。

  • 慕村5352741
    2017-12-30 10:28:15

    divider--=9;100/9=11点多然后100+11=111后return111了

Java入门第三季

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

409792 学习 · 4340 问题

查看课程

相似问题