gpt4 book ai didi

java - 错误的 catch block 运行

转载 作者:行者123 更新时间:2023-12-01 18:44:25 24 4
gpt4 key购买 nike

在我的方法中,下面的伪代码在一行中创建了两个异常(ArrayIndexOutOfBounds 和 NumberFormatException)。

在这一行中,输入文件从 X+Y 列更改为 X 列。

外部 catch 首先被捕获,并在内部 catch 本身执行此操作之前停止程序。

我需要内部循环来捕获异常,因为我正在使用它将数据打印到文件中。

try{
Initialize local variables
//Includes getting numerical strings from input fields
//Hence NumberFormatException to check for correct input
try{
get file name
//hence FileNotFoundException
try{
read line, get column A, B and C
//Column B is at an index larger than X
//hence ArrayIndexOutOfBoundsException
}catch(ArrayIndexOutOfBoundsException){
print data to file
}
} catch(FileNotFoundException){
error message
}
} catch(NumberFormatException){
error message
//error caught here, checks for whether
//numbers were entered in the required fields
}

是否有办法强制首先触发内部捕获,或者代码是否需要围绕此进行修改?

最佳答案

尝试在内部 block 中捕获更通用的异常。如果捕获的异常是instanceof NumberFormatException,则将其传递到外部 block 或直接返回错误消息。

关于java - 错误的 catch block 运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18462197/

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