如果 try 块内发生异常,则异常之后的任何内容都不会执行。因此,如果第 11 项发生异常,则第 12 - 20 项将不会被执行。执行将从第 11 项跳转到 catch 块,如果有finally 块,则跳转到finally 块。
根据您的问题所述,当字段不存在时您会得到异常。我建议检查该字段是否存在,然后执行操作。我不建议使用 try catch 作为检查存在条件的方法。Try catch 应该用于错误处理,如果确实出现错误,通常不想继续正常执行。如果您不喜欢检查每一行的条件,或者除了捕获异常之外没有其他方法来检查它,那么我建议使用 try catch 创建一个帮助函数
boolean checkField(field){
try{/* do operation on field*/}
catch(Exception e){return false;}
return true;
}
void main(){
if !(checkField(field1)) return;
else if !(checkField(field2)) return;
.
.
.
}
Run Code Online (Sandbox Code Playgroud)