1
구하고자 하는 날짜 시간으로 변경
public static final String DEFAULT_PATTERN = "yyyyMMddHHmmss";
public static final String[] DEFAULT_PATTERN2 = { "yyyyMMddHHmmss" };
LocalDateTime startLDT = DateUtil.parseDate("202301" + "01", new String[] { "yyyyMMdd" });
LocalDateTime nextLDT = DateUtil.parseDate("202305" + "01", new String[] { "yyyyMMdd" });
2
차이 시간 및 차이 달을 함수로 만든다.
/**
* 차이 시간 구하기
*
* @param fromDate 이전 시간
* @param toDate 이후 시간
* @return long 차이 시간 (시간 단위)
*/
public static long hoursBetween(LocalDateTime fromDate, LocalDateTime toDate) {
Long fromDateMilli = fromDate.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli();
Long toDateMilli = toDate.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli();
long term = toDateMilli - fromDateMilli;
return term / AVERAGE_MILLIS_PER_HOUR;
}
/**
* 차이 달 구하기
*
* @param fromDate 이전 시간
* @param toDate 이후 시간
* @return int 차이 달 (달 단위) 같으면 0, 202304, 202305 -> 1 202306, 202305 -> -1
*/
public static int monthsBetween(LocalDateTime fromDate, LocalDateTime toDate) {
YearMonth fromYearMonth = YearMonth.from(fromDate);
YearMonth toYearMonth = YearMonth.from(toDate);
return ((Long)ChronoUnit.MONTHS.between(fromYearMonth, toYearMonth)).intValue();
}
이 문서는
jhy156456에 의해 작성되었습니다.
마지막 수정 날짜:2023-11-07 17:40:00