java - 我可以检查是否返回了 void 方法吗?

标签 java arrays method-invocation return

我只是想问,是否可以通过调用return;来检查void方法是否“取消”自身?

例如,在我的 main 中,我调用 calculate(myArray);,其定义如下:

public static void calculate(Object[] array) {
    if (array == null)
        return;
    // do stuff
}

他们有办法知道它是否返回吗?我的想法是创建一个“全局” boolean 值,在返回之前将其更改为 true,然后在 main 中检查它的值,或者只是将返回类型更改为 int 之类的类型,当它在开始时返回时,我们使用 return -1 ; 并在方法末尾return 0;

两者都有可能,但我认为它们都不是很好的风格。有替代方案吗?

最佳答案

你是对的,你所描述的做法在 Java(和其他现代语言)中被认为是不好的。

适合您的场景的最常见可接受的做法是:

  • 使方法抛出异常。如果“失败”代码路径在正常情况下不应发生,请执行此操作。
  • 使方法的返回类型为 bool 来指示成功或失败。如果在正常情况下也可能发生“失败”代码路径,请执行此操作。

关于java - 我可以检查是否返回了 void 方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26717583/

相关文章:

java - 使用 Java JAI 缩放图像

java - 如何使用用户给出的参数调用静态方法(反射)

iphone - 无法识别的选择器发送到实例,iPhone 错误

数组表示法中的 PHP 大括号

java - 如何在数组JAVA中存储递归函数值

java - 在通过java反射加载的插件中使用持久性的问题

java - 在 JTextArea 的列中对齐字符串

java - 使用 Java http 请求进行 Twitch 身份验证

java - 使用 Spring MVC 提交表单时出错 - HTTP 状态 404

java - 简单的Java数组程序