728x90
반응형
간단한 함수를 통해 말일을 산출
▷ Example
*개선 2024-11-26
import java.time.LocalDate;
import java.time.YearMonth;
public class DateUtils {
/** 해당 월 말일 산출 */
public static int getLastDay(int year, int month) {
return YearMonth.of(year, month).lengthOfMonth();
}
public static void main(String[] args) {
// 오늘 날짜
LocalDate today = LocalDate.now();
int year = today.getYear();
int month = today.getMonthValue();
System.out.println("요청 year : " + year);
System.out.println("요청 month : " + month);
// 말일 계산
int lastDay = getLastDay(year, month);
System.out.println(month + "월의 말일은 : " + lastDay);
}
}
요청 year : 2023
요청 month : 11
11월의 말일은 : 30
*개선 전
/** 해당 월 말일 산출 */
public static Integer getLastDay(Integer year,Integer month) {
Calendar cal = Calendar.getInstance();
cal.set(year, month-1,1);
int lastDay = cal.getActualMaximum(Calendar.DATE);
return lastDay;
}
/** Example */
public static void testDateFrtLst() {
// 날자 생성
LocalDate today = LocalDate.now();
String year = String.valueOf(today.getYear());
String month = String.format("%02d", today.getMonthValue());
System.out.println("요청 year : "+ year);
System.out.println("요청 month : "+ month);
String lastDay = String.valueOf(getLastDay(Integer.parseInt(year), Integer.parseInt(month)));
System.out.println( month + "월의 말일은 : "+ lastDay);
}
/*
결과 :
요청 year : 2021
요청 month : 04
04월의 말일은 : 30
*/
728x90
728x90
'▶ Back-End > Java' 카테고리의 다른 글
날짜 비교 (0) | 2021.05.04 |
---|---|
JSON 응답 필드 Null 값 제외(@JsonInclude) (0) | 2021.04.30 |
문자열 중간 마스킹 처리 (0) | 2021.04.22 |
문자열 n번째 이후 마스킹 처리 (0) | 2021.04.22 |
두 지점간의 거리 계산 (0) | 2021.04.16 |
댓글