コンストラクタを数秒で作成してHH:MM:SSに変換するコンストラクタを作成したいとします。私は正の秒でかなり簡単にこれを行うことができますが、私は負の秒でいくつかの難しさに走っています。ここで負の秒から時を分:秒に変換します。
は、私がこれまで持っているものです。
private final int HOUR, MINUTE, SECOND, TOTAL_TIME_IN_SECONDS;
public MyTime(int timeInSeconds) {
if (timeInSeconds < 0) {
//Convert negative seconds to HH:MM:SS
} else {
this.HOUR = (timeInSeconds/3600) % 24;
this.MINUTE = (timeInSeconds % 3600)/60;
this.SECOND = timeInSeconds % 60;
this.TOTAL_TIME_IN_SECONDS
= (this.HOUR * 3600)
+ (this.MINUTE * 60)
+ (this.SECOND);
}
}
TimeInSecondsをがある場合は-1、私は時間が23時59分59秒を返すようにしたい、など
ありがとう!
Sergio answer - whileは非常に効率的ではありません。モジュロ(%)ははるかに優れています –