[자바] 날짜를 요일로 바꾸기
날짜를 요일로 바꾸기
파이썬이든 SQL이든 심지어 엑셀에도 날짜관련된 자료형에는 요일을 구하는 기능이 포함되어 있습니다. 이번에는 자바를 이용하여 날짜를 요일로 바꾸는 방법에 대해 알아보겠습니다. 자바8 이상부터는 LocalDate 클래스의 getDayOfWeek() 메서드를 통해 날짜를 요일로 바꿀 수 있습니다. 게다가 숫자가 아닌 FRIDAY와 같이 영어로 나와 더 알기 쉬운거 같습니다.
구현 순서
- String 형태의 날짜를 입력한다:
- "2022-12-8" 또는 "2022-12-08" 한자리 숫자 앞에 0이 들어가냐 안들어가냐에 따라 포맷터가 달라집니다.
- 포맷터를 설정하기: 2022-12-8로 입력하면 포맷터가 달라집니다.
- DateTimeFormatter.ISO_LOCAL_DATE 포맷터를 사용하면 2022-12-08 밖에 입력할 수 없습니다.
- 하지만 이렇게 별도의 포매터를 설정하면이렇게 하면 2022-12-8과 2022-12-08 둘다 사용할 수 있습니다. DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-M-d");
- LocalDate 객체 만들기: LocalDate date1 = LocalDate.parse("2022-12-8",formatter);
- date1.getDayOfWeek() 로 요일 알아내기
전체 코드
import java.text.ParseException;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.Objects;
public class dateTrain {
public static void main(String[] args) throws ParseException {
String[] dates = new String[]{"2022-12-8","2022-12-9"};
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-M-d");
for (String s : dates) {
LocalDate date1 = LocalDate.parse(s,formatter);
System.out.println("date2 = " + date1);
System.out.println("date1.getDayOfWeek() = " + date1.getDayOfWeek());
}
String[] dates1 = new String[]{"2022-12-08","2022-12-09"};
for (String s : dates1) {
LocalDate date1 = LocalDate.parse(s,DateTimeFormatter.ISO_LOCAL_DATE);
System.out.println("date3 = " + date1);
System.out.println("date3.getDayOfWeek() = " + date1.getDayOfWeek());
System.out.println(Objects.equals(date1.getDayOfWeek().toString(), "THURSDAY"));
}
}
}
마치며
하나의 프로그래밍 언어를 익히면 다른 언어에도 똑같은, 비슷한 기능이 있기 때문에 더 빠르게 익힐 수 있는 거 같습니다.
'프로그래밍사업 > 사이드 프로젝트' 카테고리의 다른 글
[GCP]Cloud Identity-Aware Proxy를 통한 연결 실패:코드: 4003 이유 (1) | 2024.01.16 |
---|---|
[spring] application.properties 여러개 만들어서 편하게 설정 변경하기 (0) | 2023.02.11 |
[스프링 부트 + JPA + MySQL] 간단한 회원 관리 예제로 알아보는 스프링 부트 -4탄 Controller와 웹화면 만들기 (0) | 2022.11.16 |
[스프링 부트 + JPA + MySQL] 간단한 회원관리 예제로 알아보는 스프링 부트 -3탄 Service 만들기 (0) | 2022.11.15 |
윈도우에서 스프링 빌드(build) 하는 방법 (0) | 2022.11.14 |
댓글