gpt4 book ai didi

java - if 与 if/else 语句?

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:20:15 25 4
gpt4 key购买 nike

我在一个类中有这样的代码:

if (reload == 0) {
String mailSuccess = "send success mail";
} else {
String mailOther = "send other mail";
}

if (fileError1Exists == true) {
String mailError1 = "send mail for error 1";
}

if (fileError2Exists == true ) {
String mailError2 = "send mail for error 2";
}

if (fileError3Exists == true ) {
String mailError3 = "send mail for error 3";
}

也许是因为我对 Java 还很陌生,我想知道这种语法是否干净?每次,我看到一个“if/ese”表达式,更像是这样:

if (condition == 0) {
String mailSuccess = "send success mail";
} else if (fileError1Exists == true) {
String mailError1 = "send mail for error 1";
} else if (fileError2Exists == true) {
String mailError2 = "send mail for error 1";
} else if (fileError3Exists == true) {
String mailError3 = "send mail for error 1";
} else {
String mailOther = "send other mail";
}

像这样一个接一个地保持这些 if 语句干净吗?显然第一个代码示例可以工作,因为它已经在生产中。但是第一个示例和第二个示例代码做同样的事情吗?通常,它确实如此,对吧?还是因为我缺乏经验而遗漏了什么?

提前感谢您的反馈。我在以前的帖子中找不到我的遮阳篷。

编辑 谢谢大家的回答。它帮助我理解了代码,而且,它帮助我学习了一些新东西!

最佳答案

这是给定要求的问题。第一个代码将为发现的每个错误发送一封电子邮件,这意味着如果找到所有 3 个错误,它将发送 3 封电子邮件。

您的第二个代码将为找到的第一个代码发送一封电子邮件,而不是其他代码。

如果您希望每个错误都收到一封电子邮件,请使用第一个代码。否则,如果您只需要一封电子邮件来处理发生的第一个错误,请使用第二个代码。

编辑要考虑@Lino 的建议,您可以执行类似

的操作
if (reload == 0) {
String mailSuccess = "send success mail";
} else {
String mailOther = "send other mail";
}

StringBuilder mailErrors = new StringBuilder();

if (fileError1Exists) {
mailErrors.append("error 1 occurred");
}

if (fileError2Exists) {
mailErrors.append("error 2 occurred");
}

if (fileError3Exists) {
mailErrors.append("error 3 occurred");
}

String mailErrorText = mailErrors.toString();

跟踪错误并发送一封电子邮件,其中包含有关发生的所有错误的信息。

恕我直言,跟踪每个错误是最佳做法。

关于java - if 与 if/else 语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51151507/

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