Time
시간 관리 패키지
- Java 8 버전에서 등장
- 기존 시간 관리 도구들의 문제점을 종합적으로 해결
- 월을 설정하기 불편함
- 메서드의 용도 파악이 어려움
- 윤년 처리는 되지만 알기 어려움
- 날짜 설정이 가변
- 시간 변경은 쉬운데 시간 차를 구하기 어려움
- 날짜랑 시간이 항상 같이 존재
LocalDate
날짜만 저장하는 클래스
.now()
오늘 날짜를 반환하는 메서드
LocalDate a = LocalDate.now();
.of()
지정한 날짜를 반환하는 메서드
LocalDate b = LocalDate.of(2025, 5, 20);
.parse()
`String`데이터를 `LocalDate`객체로 변환하는 메서드
LocalDate date = LocalDate.parse("2024-12-21");
.isBefore()
지난 날짜인지 확인하는 메서드
date.isBefore(current)
.isLeapYear()
윤년 여부를 반환하는 메서드
a.isLeapYear()
.getYear()
연도를 반환하는 메서드
date.getYear()
.getMonthValue()
월을 반환하는 메서드
date.getMonthValue()
.getDayOfMonth()
일을 반환하는 메서드
date.getDayOfMonth()
.getDayOfWeek()
요일을 반환하는 메서드
date.getDayOfWeek()
.plusDays()
날짜를 더해 계산하는 메서드
LocalDate after100 = a.plusDays(100);
.minusDays()
날짜를 빼서 계산하는 메서드
LocalDate before100 = a.minusDays(100);
DayOfWeek
월요일부터 일요일까지를 구분하는 열거형 (`enum`) 클래스
- 월요일부터 일요일까지 1부터 7까지 정수로 반환
DayOfWeek.SATURDAY
Period
기간(연 / 월 / 일) 계산용 클래스
.between()
날짜 차이를 계산하는 메서드
Period period = Period.between(a, b);
.getYears()
연도를 반환하는 메서드
period.getYears()
.getMonths()
월을 반환하는 메서드
period.getMonths()
.getDays()
일을 반환하는 메서드
period.getDays()
DateTimeFormatter
날짜 형식을 생성해주는 클래스
.ofParttern()
날짜 형식을 지정해주는 메서드
DateTimeFormatter fmt = DateTimeFormatter.ofPattern("dd/MM/yyyy");
LocalTime
시간만 저장하는 클래스
.now()
오늘 시간을 반환하는 메서드
LocalTime a = LocalTime.now();
.of()
지정한 시간을 반환하는 메서드
LocalTime b = LocalTime.of(18, 30);
.parse()
`String`데이터를 `LocalTime`객체로 변환하는 메서드
LocalTime c = LocalTime.parse("18:30");
.isBefore()
지난 시간인지 확인하는 메서드
inTime.isBefore(outTime)
.getHour()
시간을 반환하는 메서드
a.getHour()
.getMinute()
분을 반환하는 메서드
a.getMinute()
.getSecond()
초를 반환하는 메서드
a.getSecond()
Duration
시간(시 / 분 / 초) 계산용 클래스
.between()
시간 차이를 계산하는 메서드
Duration duration = Duration.between(a, b);
.toDaysPart()
일을 반환하는 메서드
duration.toDaysPart()
.toHoursPart()
시간을 반환하는 메서드
duration.toHoursPart()
.toMinutesPart()
분을 반환하는 메서드
duration.toMinutesPart()
.toSecondsPart()
초를 반환하는 메서드
duration.toSecondsPart()
.toDays()
총 일수를 반환하는 메서드
duration.toDays()
.toHours()
총 시간 수를 반환하는 메서드
duration.toHours()
.toMinutes()
총 분 수를 반환하는 메서드
duration.toMinutes()
.toSeconds()
총 초 수를 반환하는 메서드
duration.toSeconds()
LocalDateTime
날짜와 시간을 모두 저장하는 클래스
.now()
오늘 날짜, 시간을 반환하는 메서드
LocalDateTime t1 = LocalDateTime.now();
.of()
지정한 날짜, 시간을 반환하는 메서드
LocalDateTime t2 = LocalDateTime.of(2024, 12, 19, 14, 57, 30);
LocalDateTime end = LocalDateTime.of(now, outTime);
.parse()
`String`데이터를 `LocalDateTime`객체로 변환하는 메서드
LocalDateTime t3 = LocalDateTime.parse("2024-12-19T14:57:30");
DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime t4 = LocalDateTime.parse("2024-12-19 14:57:30", fmt);
.getYear()
연도를 반환하는 메서드
t1.getYear()
.getMonthValue()
월을 반환하는 메서드
t1.getMonthValue()
.getDayOfMonth()
일을 반환하는 메서드
t1.getDayOfMonth()
.getHour()
시간을 반환하는 메서드
t1.getHour()
.getMinute()
분을 반환하는 메서드
t1.getMinute()
.getSecond()
초를 반환하는 메서드
t1.getSecond()
.withYear()
기존 연도를 변경하는 메서드
t1.withHour(2023)
.withMonth()
기존 월을 변경하는 메서드
t1.withMonth(1)
.withDayOfMonth()
기존 일을 변경하는 메서드
t1.withDayOfMonth(1)
'Java > 모듈' 카테고리의 다른 글
[Java / 모듈] Random (1) | 2024.12.26 |
---|---|
[Java / 모듈] 숫자 형식 모듈 (0) | 2024.12.26 |
[Java / 모듈] 시간 모듈 (1) | 2024.12.25 |
[Java / 모듈] Runtime (0) | 2024.12.24 |
[Java / 모듈] System (1) | 2024.12.24 |