在Java中,可以"抛出异常"替换"返回"声明?我应该在哪里放置return语句来获取返回值?

时间:2016-08-17 23:54:36

标签: java exception return

Java入门者,我在下面的代码中得到了3个问题:

  1. 会发生错误,例如" 第18行:错误:缺少返回语句",如果我没有在第16行或第17行放置return语句或抛出异常,我在那里注释。

  2. 当我想获得数组结果的返回值时,我是否应该按照第11行中放入数组的值进行操作?如果我最后返回,为什么它不正确,例如第17行?

  3. 第13行和第34行的用法是什么? map.put(NUMS [I],i)的; "请?

  4. 感谢您的回答!

    enter image description here

1 个答案:

答案 0 :(得分:0)

  1. 如果您在最后一行抛出异常,则没有返回是没问题的。我测试了它。但这绝不是一种可以被称为“替代”的方法。退货声明。 return表示该方法已完成计算并已达到结果。一个新的例外'表示该方法遇到输入问题,或者在计算过程中遇到问题。这将使调用方法知道调用是不成功的,然后调用方法可以对其进行操作。

    // No return statement. public Integer example() { if(true) { System.out.println("This is true\n"); } throw new IllegalArgumentException("no such"); }

    1. 我没有查看逻辑,但你应该在你认为该方法完成其工作的行之后立即放置return语句,现在可以将线程释放给调用方法。如果您确实希望在返回语句之后执行某些代码,在某些用例中就是这种情况。你可以使用finally块。
    2. public Integer example() { try { if (true) { System.out.println("This is true\n"); return 0; } }finally { System.out.println("Always do this\n"); } return 0; }

    3. Map.put - 用于将条目存储到地图中。请务必阅读documentation - map