gpt4 book ai didi

java - 如何在 Consumer Java 8 中抛出异常

转载 作者:行者123 更新时间:2023-12-02 07:53:39 26 4
gpt4 key购买 nike

在 java 8 中使用消费者时有没有办法抛出异常?

例如:

    private void fooMethod(List<String> list) throws Exception {

list.forEach(element->{
if(element.equals("a")) {
throw new Exception("error!");
}
});

}

这给了我一个编译器错误:未处理的异常类型异常

在这种情况下抛出异常的正确方法是什么?

最佳答案

由于 Exception 及其子类(除了 RuntimeException)都是受检查异常,并且在 lambda 中,您不能抛出受检查异常。因此您应该使用 RuntimeException:

private void fooMethod(List<String> list) throws Exception {
list.forEach(element->{
if(element.equals("a")) {
throw new RuntimException("error!");
}
});
}

关于java - 如何在 Consumer Java 8 中抛出异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60619543/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com