You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java异常返回类型及空数组校验复用方法问题咨询

Java异常与数组校验方法的问题解答

关于Java异常的返回类型

Java中,当方法抛出异常时,方法执行会立即中断,不会产生返回值,因此不存在“异常的返回类型”这一概念。异常是一种流程中断机制,用于通知调用者出现异常情况,而非方法的返回结果。

实现数组校验方法的正确方式

你的代码存在两处需要修正的地方,调整后即可实现复用的数组空校验:

  1. 调用校验方法时必须传入要校验的数组参数
  2. 校验方法的返回类型设为void(表示该方法不返回任何值)

修正后的完整代码示例

public int addAll(int[] integers) {
    throwExceptionForNullArray(integers); // 传入待校验的数组
    int sumOfAllIntegers = 0;
    for (int integer : integers) {
        sumOfAllIntegers += integer;
    }
    return sumOfAllIntegers;
}

// 返回类型为void,仅负责校验并抛出异常
public void throwExceptionForNullArray(int[] integers) {
    if (integers == null) {
        // 修正错误信息,使其与校验逻辑匹配
        throw new IllegalArgumentException("Null array is not allowed");
    }
}

扩展:同时校验数组为null和空数组

如果需要同时禁止null数组和长度为0的空数组,可以扩展校验方法:

public void throwExceptionForInvalidArray(int[] integers) {
    if (integers == null) {
        throw new IllegalArgumentException("Null array is not allowed");
    }
    if (integers.length == 0) {
        throw new IllegalArgumentException("Empty array is not allowed");
    }
}

这样你的加减乘除方法都可以调用这个统一的校验方法,完全避免重复代码。

内容的提问来源于stack exchange,提问作者santa_cloudy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 14:15:30