Java 循环以计算时间戳

Java 循环以计算时间戳,java,loops,for-loop,Java,Loops,For Loop,我有一个时间戳的字符串输入,如下所示: 23 46 22 其中“23”表示一天中的小时,“46”表示分钟,“22”表示秒 我有一个小问题。我需要获取从该实例到一天结束的所有时间戳,即从234622到2359 我用来获取所有时间戳(一次一个)的循环是: 我希望以正确的方式获取时间戳,例如: 23 46 22 23 46 23..... .. 23 47 01 23 47 02... 最优雅的方法是什么?您可以在每个循环结束时重置秒数和分钟数: int m = minute; int s = s

我有一个时间戳的字符串输入,如下所示:

23 46 22
其中“23”表示一天中的小时,“46”表示分钟,“22”表示秒

我有一个小问题。我需要获取从该实例到一天结束的所有时间戳,即从
234622
2359

我用来获取所有时间戳(一次一个)的循环是:

我希望以正确的方式获取时间戳,例如:

23 46 22
23 46 23.....
..
23 47 01
23 47 02...

最优雅的方法是什么?

您可以在每个循环结束时重置秒数和分钟数:

int m = minute;
int s = second;

for (int i = hour; i < 24; i++) {
    for (int j = m; j < 60; j++) {
        for (int k = s; k < 60; k++) {
            ....
        }
        s = 0;
    }
    m = 0;  
}
int m=分钟;
int s=秒;
for(int i=小时;i<24;i++){
对于(int j=m;j<60;j++){
对于(int k=s;k<60;k++){
....
}
s=0;
}
m=0;
}

不要忘记,除非格式化输出,否则一位数不会显示前导零。如果这是为了显示到控制台,您可以添加此行
System.out.printf(“%02d%02d%02d%n”,小时,米,秒)到内部循环。如果要保存到文件中,可以使用
String.format(“%02d%02d%02d%n”,小时,米,秒)
23 46 22
23 46 23.....
..
23 47 01
23 47 02...
int m = minute;
int s = second;

for (int i = hour; i < 24; i++) {
    for (int j = m; j < 60; j++) {
        for (int k = s; k < 60; k++) {
            ....
        }
        s = 0;
    }
    m = 0;  
}