개발자입니다
[Java] 특정 날짜의 요일 구하기 (숫자, 영문, 한글) 본문
1. LocalDateTime / LocalDate (Java 8 이후)
Java 8 이후에서는,
날짜를 표현하기 위해 java.time.LocalDateTime, java.time.LocalDate 클래스가 주로 사용됩니다.
이 클래스를 사용하여, 날짜를 표현한 후 요일을 구할 수 있습니다.
숫자로 구하기
import java.time.DayOfWeek;
import java.time.LocalDate;
public class GetDayOfWeek {
public static void main(String[] args) {
// 1. LocalDate 생성
LocalDate date = LocalDate.of(2021, 12, 25);
// LocalDateTime date = LocalDateTime.of(2021, 12, 25, 1, 15, 20);
System.out.println(date); // // 2021-12-25
// 2. DayOfWeek 객체 구하기
DayOfWeek dayOfWeek = date.getDayOfWeek();
// 3. 숫자 요일 구하기
int dayOfWeekNumber = dayOfWeek.getValue();
// 4. 숫자 요일 출력
System.out.println(dayOfWeekNumber); // 6
}
}
LocalDate date = LocalDate.of(2021, 12, 25);
LocalDateTime date = LocalDateTime.of(2021, 12, 25, 1, 15, 20);
LocalDate 는 날짜를 나타내는 클래스이고, LocalDateTime은 날짜와 시간을 나타내는 클래스입니다.
이 예제에서는 2021년 12월 25일의 요일을 구합니다.
DayOfWeek dayOfWeek = date.getDayOfWeek();
요일을 표현하는 DayOfWeek Enum을 가져옵니다.
이제 이, DayOfWeek Enum 을 가지고, 요일을 구할 수 있습니다.
int dayOfWeekNumber = dayOfWeek.getValue();
2021년 12월 25일은 토요일입니다.
DayOfWeek의 getValue() 메소드를 이용하면 요일을 숫자로 가져올 수 있습니다.
월요일부터 일요일까지 1~7의 숫자로 표현됩니다.
즉, 월요일이 1, 일요일이 7입니다.
토요일이므로, 여기서는 6이 리턴되었습니다.
LocalDateTime date = LocalDateTime.of(2021, 12, 25, 1, 15, 20);
날짜와 시간을 표현하는 LocalDateTime 클래스에서도
LocalDate와 마찬가지로 getDayOfWeek() 메소드를 이용하여 DayOfWeek Enum을 구할 수 있고,
이 Enum 객체를 이용하여 요일을 구할 수 있습니다.
출처: https://hianna.tistory.com/610 [어제 오늘 내일:티스토리]
'Java' 카테고리의 다른 글
[Java] JDBC 사용 객체(DriverManager, Connection, Statment, PrepareStatement, CallableStatement, ResultSet) (0) | 2022.10.03 |
---|---|
[Java] printStackTrace (0) | 2022.10.03 |
[Java] JDBC(Connection, PreparedStatement, ResultSet (0) | 2022.10.03 |
[Java] 블로그 일기 형식 자동 출력 코딩 (0) | 2022.10.03 |
[Java] 문자열 자르기(substring) (0) | 2022.10.03 |