//依赖 hutool 工具包
public static Long getRemainingTime(Date time) {
long remainingTime = 0;
//过期时间偏移一天
DateTime expirationTime = DateUtil.offsetDay(time, overdueDays);
//过期时间小于当前时间 未过期 DateUnit.SECOND可自定义返回时间格式
if (expirationTime.after(new Date())) {
remainingTime = DateUtil.between(new Date(), expirationTime, DateUnit.SECOND);
}
return remainingTime;
}
/**
* @param offsetDay 偏移年数 负数为减 正数为增
* @Description:当前年份 偏移
* @Author:Nyl
*/
public static Date yearOffset(Integer offsetDay) {
if (null == offsetDay) {
return null;
}
Date now = DateUtil.parse(DateUtil.today(), "yyyy-MM-dd");
Date date = DateUtil.offset(now, DateField.YEAR, offsetDay);
return date;
}
/**
* 偏移天数到当日 23:59:59
*
* @param offsetDay 偏移天数
* @return LocalDateTime
*/
public static LocalDateTime getOffsetDay(Integer offsetDay) {
LocalDateTime localDateTime = LocalDateTimeUtil.of(DateUtil.parse(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))));
return localDateTime.plusDays(offsetDay).withHour(23).withMinute(59).withSecond(59);
}
/**
* 偏移天数到当日 23:59:59
*
* @param month 偏移月数
* @return LocalDateTime
*/
public static LocalDateTime getOffsetMonth(Integer month,LocalDateTime time) {
LocalDateTime localDateTime = LocalDateTimeUtil.of(DateUtil.parse(time.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))));
return localDateTime.plusMonths(month).withHour(23).withMinute(59).withSecond(59);
}
java计算两个时间相差多长时间
于 2021-09-16 15:46:44 首次发布