格式小数表示小时为HH:mm

时间:2013-05-13 15:09:49

标签: java

我正在尝试格式化代表小时的Double:

Double totalHours = 1.05;

int hour = totalHours.intValue();
Long minutes = Math.round((totalHours - hour) * 60);

System.out.println(hour + ":" + minutes);

在这种情况下,我得到"1:3",但我喜欢"01:03"。我该怎么做?

或者有更好的方法来做到这一点?

3 个答案:

答案 0 :(得分:7)

使用DecimalFormat

DecimalFormat df = new DecimalFormat("00"); // "0" means don't omit leading zero
System.out.println(df.format(hour) + ":" + df.format(minutes));

答案 1 :(得分:2)

使用String.format("%02d:%02d", hour, minutes)

答案 2 :(得分:1)

试试这个:

 String strHourFormat = "HH";
 SimpleDateFormat sdf = new SimpleDateFormat(strHourFormat);
 sdf = new SimpleDateFormat(strHourFormat);