Appearance
时间工具类
一、简介
- 自用。
- 封装常用的时间操作。
- 封装在 component 模块中。
二、初始化时间
- 2.1 当前时间
- 静态方法
TimeUtils.now();
,返回TimeUtils对象。
- 2.2 指定时间设置
- 静态方法
TimeUtils.setTime(xxx);
,设置时间。
说明
- setTime是一个“多态”方法,支持多种格式设置时间。
- 时间戳 设置时间:setTime(long timestamp)
- Date 设置时间:setTime(Date date)
- LocalDateTime 设置时间:setTime(LocalDateTime localDateTime)
- 字符串(默认格式) 设置时间:setTime(String dateStr)
- 字符串(自定义格式) 设置时间:setTime(String dateStr, String formatStr)
- 返回 TimeUtils 对象
三、时间计算
- 3.1 加、减特定格式的时间
- 方法
TimeUtils.addXxx();
,加、减时间。
说明
- addXxx是多个方法,计算不同时间格式的时间计算。
- 年计算:addYear(int amount)
- 月计算:addMonth(int amount)
- 日计算:addDay(int amount)
- 时计算:addHour(int amount)
- 分计算:addMinute(int amount)
- 秒计算:addSecond(int amount)
- 返回 TimeUtils 对象
- 3.2 加、减自定义格式的时间
- 方法
TimeUtils.add(int type, int amount);
,加、减自定义格式的时间。
说明
- add方法可以自定义要计算的时间格式。
- 其中,参数type使用java.util.Calendar.java类的常量,具体如下:
四、时间输出
- 4.1 输出Date类型时间
- 方法
TimeUtils.toDate();
,输出Date类型时间。
- 4.2 输出LocalDateTime类型时间
- 方法
TimeUtils.toLocalDateTime();
,输出LocalDateTime类型时间。
- 4.3 输出Calendar
- 方法
TimeUtils.toCalendar();
,输出Calendar类型时间。
- 4.4 输出long类型时间戳
- 方法
TimeUtils.toTimestamp();
,输出时间戳。
- 4.5 输出java.sql.Timestamp类型时间戳
- 方法
TimeUtils.toSqlTimestamp();
,输出java.sql.Timestamp类型时间戳。
- 4.6 输出字符串类型时间
说明
- 共提供 3 个方法,可输出字符串类型的时间字符串。
- 方法
TimeUtils.toString();
,默认格式[yyyy-MM-dd HH:mm:ss]输出。 - 方法
TimeUtils.toString(String format);
,自定义格式输出。 - 方法
TimeUtils.toFormat(String format);
,自定义格式输出。
- 其中方法2和3,两个方法完全相同,只是方法名不同。
五、使用举例
说明
- TimeUtils 工具类,支持连续“链式操作”,通过连点调用。
- 例如:
- 更多示例,如下所示:
java
public static void main(String[] args) {
// 使用示例
System.out.println(TimeUtils.now());// 操作当前时间
System.out.println(TimeUtils.setTime(new Date()));// 操作设置时间
// 操作示例
System.out.println(TimeUtils.now().addDay(1).toLocalDateTime());
System.out.println(TimeUtils.now().addDay(1).toTimestamp());
System.out.println(TimeUtils.now().addDay(-5).toFormat("yyyy-MM-dd"));
System.out.println(TimeUtils.now().addMinute(10).toFormat("yyyy-MM-dd HH:mm:ss"));
System.out.println("---");
System.out.println(TimeUtils.now());
}