LocalDate 이번 달 시작일(1일) 및 마지막일 구하기 ( Java )
🌜 Programming/JAVA

LocalDate 이번 달 시작일(1일) 및 마지막일 구하기 ( Java )

728x90

안녕하세요. 그린주입니다 ๑'ٮ'๑
경험이 많이 부족하지만 최선을 다해 적어보겠습니다!

 

개요

이번 글에서는 LocalDate를 사용하여 현재 달의 시작일(1일)과 마지막 일을 구하는 방법을 공유합니다!


목차

YearMonth 방법

withDayOfMonth 방법

with 방법


YearMonth 방법

YearMonth today1 = YearMonth.now();
LocalDate start1 = today1.atDay(1);
LocalDate end1 = today1.atEndOfMonth();

log.info("# YearMonth의 atDay(int dayOfMonth), atEndOfMonth() 방법");
log.info("오늘 날짜 : " + today1);
log.info("해당 월의 시작일(1일) : " + start1);
log.info("해당 월의 마지막일 : " + end1);

  YearMonth.now().atDay(int dayOfMonth)

 

today1 월의 day에 해당되는 날짜를 반환합니다.

ˇ 일이 년-월에 유효하지 않을 경우 DateTimeException

 

 

  YearMonth.now().atEndOfMonth();

 

today1 월의 마지막 일을 반환합니다.

 


withDayOfMonth 방법

LocalDate today2 = LocalDate.now();
LocalDate start2 = today2.withDayOfMonth(1);
LocalDate end2 = today2.withDayOfMonth(today2.lengthOfMonth());

log.info("# withDayOfMonth(int dayOfMonth), lengthOfMonth() 방법");
log.info("오늘 날짜 : " + today2);
log.info("해당 월의 시작일(1일) : " + start2);
log.info("해당 월의 마지막일 : " + end2);

  .withDayOfMonth()

 

today2 월의 day값을  변경합니다.

 

 

  .lengthOfMonth()

 

today2 월의 길이(사이즈)를 반환합니다.


with 방법

LocalDate today3 = LocalDate.now();
LocalDate start3 = today3.with(TemporalAdjusters.firstDayOfMonth());
LocalDate end3 = today3.with(TemporalAdjusters.lastDayOfMonth());

log.info("# with(TemporalAdjuster adjuster) 방법");
log.info("오늘 날짜 : " + today3);
log.info("해당 월의 시작일(1일) : " + start3);
log.info("해당 월의 마지막일 : " + end3);

  .with(TemporalAdjuster adjuster)

 

TemporalAdjuster를 사용해 today3의 날짜를 조정하고 조정된 날짜의 복사본을 반환합니다.

 

 

  firstDayOfMonth()와 lastDayOfMonth()

 

today3 월의 시작일(1일), 마지막일을 찾아줍니다.


마무리

이렇게 LocalDate 활용해 해당 월의 시작일(1일), 마지막일을 구해보는 방법에 대해 알려드렸습니다.

다들 잘 따라오셨을까요? 너무 쉬웠나요!?

 

 

긴 글 봐주셔서 감사합니다!

java의 LocalDate 또는 MySQL의 date에 대한 글은 차곡차곡 쌓일 예정입니다!

오늘도 행복한 하루 보내세요 '◡'✿


728x90
728x90