java 数值类型分秒时间格式化的实例代码

时间:2022-09-13 13:14:10

java 数值类型分秒时间格式化的实例代码

java 实例代码:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
import java.util.concurrent.TimeUnit;
 
public class DateUtils {
 
  private static final String[] UNIT_DESC = new String[]{"天", "小时", "分钟", "秒"};
 
  /**
   * 格式化持续时间<br/>
   * 将持续时间,格式化为 xx天xx小时xx分钟xx秒 如果 "xx" 为0 自动缺省。
   *
   * @param seconds 持续时间,单位(分钟)
   * @return 格式化后的字符串
   * @see TimeUnit 时间单位转换工具
   */
  public static String convertMinute2Str(long minute) {
    StringBuilder sb = new StringBuilder();
    long[] date = {TimeUnit.SECONDS.toHours(minute) % 24,TimeUnit.SECONDS.toMinutes(minute) % 60, TimeUnit.SECONDS.toSeconds(minute) % 60};
    for (int i = 0; i < date.length; i++) {
      long l = date[i];
      if (l > 0) sb.append(l).append(UNIT_DESC[i]);
    }
    return sb.toString();
  }
  
  /** 格式化持续时间<br/>
   * 将持续时间,格式化为 xx天xx小时xx分钟xx秒 如果 "xx" 为0 自动缺省。
   *
   * @param seconds 持续时间,单位(秒)
   * @return 格式化后的字符串
   * @see TimeUnit 时间单位转换工具
   */
  public static String convertSeconds2Str(long seconds) {
    StringBuilder sb = new StringBuilder();
    long[] date = {TimeUnit.SECONDS.toDays(seconds), TimeUnit.SECONDS.toHours(seconds) % 24, TimeUnit.SECONDS.toMinutes(seconds) % 60, TimeUnit.SECONDS.toSeconds(seconds) % 60};
    for (int i = 0; i < date.length; i++) {
      long l = date[i];
      if (l > 0) sb.append(l).append(UNIT_DESC[i]);
    }
    return sb.toString();
  }
  
  public static void main(String[] args) {
        System.out.println(convertMinute2Str(140));   // 2小时20分钟
        System.out.println(convertSeconds2Str(33680)); // 9小时21分钟20秒
    }
}

如有疑问请留言或者到本站社区交流讨论,本站关于java开发的文章还有很多,希望大家搜索查阅,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

原文链接:http://www.ibloger.net/article/128.html