728x90
반응형
1. java.time 패키지
- Java에서 날짜와 시간을 다루는 클래스들이 담긴 패키지
- Calendar와 Date의 단점을 보완하여 JDK 1.8 버전에 추가되었다.
- 5개의 클래스가 존재
- LocalDate : 로컬 날짜 클래스
- LocalTime : 로컬 시간 클래스
- LocalDateTime : 로컬 날짜 및 시간 클래스 (LocalDate + LocalTime)
- ZonedDateTime : 특정 타임존(TimeZone)의 날짜와 시간 클래스
- Instant : 특정 시점의 Time-Stamp 클래스
1. LocalDate 클래스
(1) LocalDate 생성
- now() : 현재 날짜와 시간을 반환
- of() : 매개변수로 값을 지정할 수 있다.
LocalDate date1 = LocalDate.now(); //현재 날짜와 시간
LocalDate date2 = LocalDate.of(2023, 11, 06); //매개변수로 값 지정
(2) 주요 get 메소드 종류
date1.getYear(); //년도(2023)를 반환
date1.getMonthValue(); //월(11)을 반환
date1.getDayOfMonth(); //일(6)을 반환
date1.getHour(); //시간(21)을 반환
date1.getMinute(); // 분(55)을 반환
date1.getSecond(); //초(38)을 반환
date1.getNano(); //나노초(805075800)를 반환
(3) 날짜 변경 메소드
- LocalDate는 불변객체이다. 따라서 속성값(연, 월, 일)을 바꾸려면 새로운 객체를 생성하거나 기존 객체에 재할당 해야한다.
- 특정 값으로 바꾸기
date2 = date2.withYear(2030); //date2 객체에 재할당, 2030-11-06
date2 = date2.withMonth(12); // 2030-12-06
date2 = date2.withDayOfMonth(25); // 2030-12-25
// 속성 연쇄적으로 변경
date2 = date2.withYear(2040).withMonth(10).withDayOfMonth(10); //2040-10-10
- 상대값으로 바꾸기
date2 = date2.plusYears(1); // 2041-10-10
date2 = date2.plusMonths(1); //2041-11-10
date2 = date2.plusWeeks(1); //2041-11-17
date2 = date2.plusWeeks(1); //2041-11-18
(4) 요일 구하기 (숫자)
//1. LocalDate 생성
LocalDate date = LocalDate.of(2023,12,25);
//2. DayOfWeek 객체 구하기
DayOfWeek dayOfWeek = date.getDayOfWeek();
//3. 숫자 요일 구하기
int dayOfWeekNumber = dayOfWeek.getValue();
// 월요일이 1, 화요일이 2, ... 일요일이 7이다.
반응형
'Java' 카테고리의 다른 글
[Java] parseInt() VS valueOf() 차이점 (0) | 2024.02.25 |
---|---|
[Java] 객체지향 언어의 특징 (0) | 2023.12.14 |
[Java] Vector (0) | 2023.11.21 |
[Java] Map 의 getOrDefault 사용법 (0) | 2023.11.20 |
[Java] int와 Integer의 차이 (0) | 2023.11.15 |