如何在方法声明中使用 "throws IllegalArgumentException"

How to use "throws IllegalArgumentException" in method declaration

如何编写方法声明中包含 "throws IllegalArgumentEception" 的方法。像这样:如果我只 return d 如果 d>0 否则抛出一个 IllegalArgumentException,我会怎么做?您使用 try{}catch{} 吗?

public double getPrice(double d) throws IllegalArgumentException {

}

您可以在方法的开头简单地这样做:

public double getPrice(double d) throws IllegalArgumentException {
     if(d <= 0) {
         throw new IllegalArgumentException();
     }

     // rest of code
}

此外,方法声明中并不真正需要 throws IllegalArgumentException。这只能通过 已检查的异常 来完成。但是IllegalArgumentException属于unchecked exceptions

有关这些的更多信息,我建议阅读这篇文章 other question

你应该检查条件,如果不满足则抛出异常

示例代码:

public double getPrice(double d) throws IllegalArgumentException {
    if (d <= 0) {
        throw new IllegalArgumentException("Number is negative or 0");
    }

    //rest of your logic

}

您可以详细了解 Java 异常 here