如果存在某种错误,我正在创建一个返回true或false的函数。目前,如果发生错误,则会显示带有错误的弹出窗口,并且该函数返回false。如果没有错误,那么它只返回true。
我的问题是: 可以,我的方法都返回一个布尔值并显示弹出窗口,或者我应该让我的方法返回一个值(int或boolean)然后根据该返回值显示错误消息,如果需要的话?
如果它有帮助,这是一个例子:
private boolean correctFormat() {
if (error1) {
//display pop up for error1
} else if (error2) {
//display pop up for error2
}
...
else {
return true;
} //no errors
return false; //there was an error
}
其他选择:
private int correctFormat() {
if (error1) {
return 1;
} else if (error2) {
return 2;
}
...
else {
return 0;
} //no error
}
private void checkFormat() {
int result = correctFormat();
if (result == 1) {} //display pop up for error1
else if (result == 2) {} //display pop up for error2
...
else {} //result == 0, no error, do nothing
}
答案 0 :(得分:0)
您应该使用异常来传达错误条件,而不是返回布尔值:
进一步阅读:https://docs.oracle.com/javase/tutorial/essential/exceptions/index.html
您不应该向呼叫者和用户通知异常,以免您的呼叫者再次通知用户。由于这个原因,我已经研究过报告相同错误不少于4次的系统。每个例外都应该只报告一次。