基本上我有以下代码。问题是如果满足if语句中的两个条件,我只想打印一次“Pass”。 int'res'是parts数组中所有6个元素的平均值。因此,所有“部件”必须具有至少40的值,并且这些部件的平均值(称为“res”)也必须高于40.此时,代码显然为“6”的每个元件输出Pass。如果它们超过40,则表示“数组”。如果“parts”数组和“res”的所有六个元素都超过或等于40,我希望这只输出一次Pass。
感谢任何帮助!
for (int i = 0; i < 6; i++)
{
if (res >= 40 && parts[i] >= 40)
{
System.out.println("Pass");
}
}
答案 0 :(得分:0)
2件事:
1)你看起来只是在检查一个否定的情况。如果您发现任何小于40的值,则需要break
而不打印“通过”。如果每个元素都超过40且res超过40,那么您需要继续,直到找到一个未完成或完成列表的元素。如果你通过整个列表并且没有一个失败,你知道你可以打印“通过”。
2)res在您提供循环时没有改变。如果你在循环中更改它,这只是示例代码,没关系。但是,如果你不是,你应该只是在循环之外检查一次。
boolean print = true;
for (int i = 0; i < 6; i++)
{
if (res < 40 | parts[i] < 40)
{
print = false;
break;
}
}
if(print)
System.out.println("Pass");
答案 1 :(得分:0)
如果我正确理解你的问题,你会想要
break;
之后的println
for (int i = 0; i < 6; i++)
{
if (res >= 40 && parts[i] >= 40)
{
System.out.println("Pass");
break;
}
}
答案 2 :(得分:0)
打印到控制台后,您可以使用break;
语句跳出循环。
break
用于逐步退出任何类型的循环。
while(true){
//do stuff
if(condition){
break;
}
}