这段代码本身工作正常,但我需要将三个while循环减少为一个,而我似乎无法在语法上正确。
while (numY == numX) {
System.out.print("The numbers are the same");
break;
}
while (numY < numX) {
int lesserY;
lesserY = numY;
int greaterX;
greaterX = numX;
System.out.printf("%d is the greater than %d", greaterX, lesserY);
break;
}
while (numY > numX) {
int greaterY;
greaterY = numY;
int lesserX;
lesserX = numX;
System.out.printf("%d is the greater than %d", greaterY, lesserX);
break;
}
答案 0 :(得分:3)
为什么你很简单不要随时使用,因为你只使用它一次并使用if(..)else
这样:
public static void main(String[] args) {
int numY = 5, numX = 6;
if (numY == numX) {
System.out.print("The numbers are the same");
} else if (numY < numX) {
int lesserY;
lesserY = numY;
int greaterX;
greaterX = numX;
System.out.printf("%d is the greater than %d", greaterX, lesserY);
} else if (numY > numX) {
int greaterY;
greaterY = numY;
int lesserX;
lesserX = numX;
System.out.printf("%d is the greater than %d", greaterY, lesserX);
}
}
答案 1 :(得分:2)
我建议在大多数编程语言中更多地研究不同的控制结构。当你需要多次重复动作时,可以使用循环。在每种情况下,您都会立即从while循环中断。查看if
/ else if
/ else
数据块,您会发现可以将程序缩减为if
,else if
,{{1}构造。
您有三种可能的结果:
1 GT; else
2&gt; numY == numX
3&gt; numY < numX
这些分支选择可以这样表达:
numY > numX
对于您的特定条件而言,最好的一点是,如果您知道if (condition1) {
// ...
} else if (condition2) {
// ...
} else if (condition3) {
// ...
}
和numY == numX
是假的,那么您就知道唯一的其他可能选择numY < numX
是真的。
这意味着您只需使用numY > numX
来表示“如果所有其他条件都为假,请执行此操作”。
else