📅  最后修改于: 2023-12-03 15:31:54.795000             🧑  作者: Mango
在Java中,OptionalInt是一种容器类型,它可能包含一个int值,也可能为空。orElseThrow()方法是OptionalInt的一种方法,它允许我们在OptionalInt为空的情况下抛出一个异常。如果OptionalInt不为空,则返回它所包含的int值;如果为空,则抛出指定的异常。
orElseThrow()方法的语法如下:
public int orElseThrow()
假设有一个名为numbers的OptionalInt,它可能包含一个int值,也可能为空。我们可以使用orElseThrow()方法来获取它所包含的int值,如下所示:
OptionalInt numbers = OptionalInt.of(42);
int number = numbers.orElseThrow();
System.out.println(number); //输出42
在上面的例子中,numbers不为空,因此orElseThrow()方法返回它所包含的int值。输出结果为42。
现在假设我们要从一个名为grades的OptionalInt中获取它所包含的int值。如果grades为空,则抛出自定义的异常NoGradeException。我们可以使用如下代码:
OptionalInt grades = OptionalInt.empty();
int grade = grades.orElseThrow(NoGradeException::new);
在上面的例子中,grades为空,因此orElseThrow()方法抛出NoGradeException。我们可以自定义NoGradeException,如下所示:
class NoGradeException extends RuntimeException {
public NoGradeException() {
super("No grade found!");
}
}
OptionalInt是Java中一个实用的容器类型,它允许我们处理可能为空的int值。orElseThrow()方法是OptionalInt的一种方法,它允许我们在OptionalInt为空的情况下抛出一个异常。使用orElseThrow()方法可以使我们的代码更安全、更健壮。