假设我有2个for循环,每个循环都包含一个if和else语句,我希望它能够工作,这样如果第一个for
循环实现,那么就打破而不运行第二个for循环。可能是一个非常简单的解决方案,感谢任何帮助。
该程序的目的是读取用户输入并迭代给定的int
,如果用户没有输入int值则迭代超过100。
由于这个代码是一切正常,除了它正在做两个循环,我希望它做一个或另一个。
package coreprog;
...
for (...){
...
if (...) {
...
}
else
System.out.println(...);
}
for (...){
...
if (...) {
...
}
else
System.out.println(...);
答案 0 :(得分:2)
首先将一个布尔标志保留在for循环中,并在break之前将其设为true。基于它,无论你想做什么都可以。例如: -
boolean firstConditionAchieved= false;
for (...){
...
if (...) {
firstConditionAchieved = true;
...
}
else
System.out.println(...);
}
第二次循环: -
if(!firstConditionAchieved){
......
}
答案 1 :(得分:0)
利用布尔变量并检查if条件下的布尔变量。如果设置了变量,则跳过循环并且不执行第二个循环,反之亦然。
答案 2 :(得分:0)
如果你想读取int
值并迭代它,如果没有提供则超过100,你只需要一个循环。
read N
if not read or not valid N then N = 100
for i = 1 to N do
...