循环程序在 Eclipse 中终止



这是我的程序,在没有运行的情况下被终止。在此,我尝试每小时,每分钟和每秒打印一次。

public class hello {
String type;
String name;
static int hour = 0;
static int min;
static int sec;
public static void  main(String args[]) {
while(hour<12) {
for(int mins = 0; mins <= 61; mins++) {
min = mins;
if(min==61) {
hour++;
min=0;
continue;
}
for(int secs = 0; secs>=61; secs++) {
sec=secs;
if(sec==61) {
min++;
sec=0;
continue;
}
System.out.println("0"+hour+":"+min+":"+sec);
}
}
}
}
} 

当我尝试通过删除第二个 for 循环并以这种方式编写它来仅打印几分钟和几小时时,它运行正常,但是当我添加用于打印秒的代码时,它也失败了。

public class hello {
String type;
String name;
static int hour =0;
static int min;
static int sec;
public static void  main(String args[]) {
while(hour<12) {
for(int mins=0 ;mins<=61;mins++) {
min = mins;
if(min==61) {
hour++;
min=0;
continue;
}
System.out.println("0"+hour+":"+min+":"+sec);
}
}
}
} 

秒的条件:

for(int secs = 0;secs>=61;secs++)

是有缺陷的。像这样更改符号:

for(int secs = 0;secs<=61;secs++)  

你的逻辑中有几个错误:

  1. 第一个 for 循环:有缺陷的测试表达式,因为一小时只有 60 分钟,而不是 61 分钟
  2. 第二个 for 循环:有缺陷的测试表达式:一分钟只有 60 秒,你也翻转了比较运算符
  3. 相应地修改 if 检查

    public class Hello {
    static int hour = 0;
    static int min;
    static int sec;
    public static void main(final String args[]) {
    while (hour < 12) {
    for (int mins = 0; mins <= 60; mins++) {
    min = mins;
    if (min == 60) {
    hour++;
    min = 0;
    continue;
    }
    for (int secs = 0; secs <= 60; secs++) {
    sec = secs;
    if (sec == 60) {
    min++;
    sec = 0;
    continue;
    }
    System.out.println("0" + hour + ":" + min + ":" + sec    );
    }
    }
    }
    }
    }
    

最新更新