繁体   English   中英

将秒转换为小时,分钟和秒

[英]Converting seconds to hours, minutes and seconds

我想长时间在Android中使用递增计时器...

目前,我正在使用此代码,但是经过几个小时,例如10个小时后,格式变为10:650:56(hh:mm:ss)...在较短的时间内,它可以正常工作...

 private Runnable updateTimerMethod = new Runnable() {

    public void run() {
        timeInMillies = SystemClock.uptimeMillis() - startTime;

        finalTime = timeSwap + timeInMillies;

        int seconds = (int) (finalTime / 1000);
        int minutes = seconds / 60;
        int hours = minutes / 60;
        seconds = seconds % 60;
        int milliseconds = (int) (finalTime % 1000);

        String timer = ("" + String.format("%02d", hours) + " :  "
                + String.format("%02d", minutes) + " : "
                + String.format("%02d", seconds));

        myHandler.postDelayed(this, 0);

        sendLocalBroadcast(timer);

    }

};

分钟的代码几乎是正确的,但您必须像数秒一样将其模数降低60。 否则,您的价值将仍然包括所有时间。

使用此功能:

private static String timeConversion(int totalSeconds) {

    final int MINUTES_IN_AN_HOUR = 60;
    final int SECONDS_IN_A_MINUTE = 60;

    int seconds = totalSeconds % SECONDS_IN_A_MINUTE;
    int totalMinutes = totalSeconds / SECONDS_IN_A_MINUTE;
    int minutes = totalMinutes % MINUTES_IN_AN_HOUR;
    int hours = totalMinutes / MINUTES_IN_AN_HOUR;

    return hours + " : " + minutes + " : " + seconds;
}

您可以在以下位置找到其他解决方案:

https://codereview.stackexchange.com/q/62713/69166

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM