0

だから私は可変的な時間を持っています。分を数えます。これを簡単に分単位にフォーマットする方法はありますか? たとえば、時間 = 63

等しいだろう

1:03

時間 = 605

等しいだろう

10:05。

前もって感謝します!

4

6 に答える 6

1

これを試して

String s = String.format("%02d:%02d", time / 60, time % 60);
于 2013-12-05T04:09:42.707 に答える
0
public static void main(String[] args) {
    Calendar cal = new GregorianCalendar();
    cal.set(Calendar.HOUR, 0);
    cal.set(Calendar.MINUTE, 0);
    cal.set(Calendar.SECOND, 0);
    cal.set(Calendar.MILLISECOND, 0);

    cal.add(Calendar.MINUTE, 605);
    System.out.println(cal.getTime());
}

新しいものを作成してCalendar分数を追加するだけです。日付部分は必要ありません。時刻だけです。このため、カレンダーのすべてを手動でリセットしました。を使用するCalendarことで、他の日付に適した計算をより柔軟に行うこともできます。

出力:

木 12 月 05 日 10:05:00 CET 2013

于 2013-12-05T04:06:54.707 に答える
0

試す、

int  totSec= 605;

int min=totSec/60;
int second=totSec%60;
System.out.printf("%d:%02d\n",min,second);
于 2013-12-05T04:07:01.990 に答える
0

SimpleDateFormat は、上記を含め、任意の時間形式をレンダリングできます。

Date オブジェクトの場合、エポックhttp://docs.oracle.com/javase/6/docs/api/java/util/Date.html#Date(long)からのミリ秒数に設定するだけです

new SimpleDateFormat("HH:mm").format(new Date(minutes * 1000 * 60))

上記のソリューションの唯一の問題は、時刻が 23:59 を過ぎた場合に繰り越されることです。

于 2013-12-05T04:08:06.417 に答える
0

入力が常に秒単位であると仮定します。

System.out.println(
    new SimpleDateFormat("HH:mm:ss").format(
        new SimpleDateFormat("ss").parse("" + seconds)));
于 2013-12-05T04:09:37.877 に答える
0
 minsformat(305);

public void minsformat(int m){
int hour=m/60;
int s=m%60;

system.out.println(hour+":"+s);
}
于 2013-12-05T04:15:13.147 に答える