我有一个Java程序,我使用Eclipse。我的程序接受3个值,并有3个预期值,它决定哪些值超出公差。我需要打印哪些值超出公差。它可能只是值1,所有这些,等等。现在我有一堆else if语句来覆盖所有超出公差的值组合。有没有更好的方法来做到这一点?谢谢!
这个程序按现在的方式运行得很好,只是看起来像是坏代码。
当前代码:
if (thicknessIsGood == true && widthIsGood == true && lengthIsGood == true) {
lumberReport = "Lumber dimensions meet tolerance standards of 0.03125 inches";
}
//check if all dimensions are within tolerance
else if (thicknessIsGood == false && widthIsGood == false && lengthIsGood == false) {
lumberReport = "Lumber dimensions are not within tolerance. All dimensions exceed tolerance of 0.03125 inches.";
}
//check if thickness is bad
else if (thicknessIsGood == false && widthIsGood == true && lengthIsGood == true) {
lumberReport = "Lumber dimensions are not within tolerance. Thickness exceeds tolerance of 0.03125 inches.";
}
//check if width is bad
else if (thicknessIsGood == true && widthIsGood == false && lengthIsGood == true) {
lumberReport = "Lumber dimensions are not within tolerance. Width exceeds tolerance of 0.03125 inches.";
}
//check if length is bad
else if (thicknessIsGood == true && widthIsGood == true && lengthIsGood == false) {
lumberReport = "Lumber dimensions are not within tolerance. Length exceeds tolerance of 0.03125 inches.";
}
//to cover all bases in lieu of 6 more else if statements (if this is wrong, please let me know
else {
lumberReport = "Lumber dimensions are not within tolerance. Two dimensions exceed tolerance of 0.03125 inches.";
}
3条答案
按热度按时间hgtggwj01#
稍微重新排列一下,您就可以报告哪些维度没有得到满足。
以下是指数的总结。
您有八条消息,不同组合的值将为消息创建适当的索引并返回它。
印刷品
该方法
9w11ddsr2#
这不会产生完全相同的输出,但您可以报告不符合标准的每个尺寸。
e4yzc0pl3#
我将使用一个数字作为位图,其中1和0分别代表
true
和false
,以及开关情况下的相应常数: