java.time 패키지는 Java 8에서 도입된 새로운 날짜와 시간 API입니다.
이 패키지는 java.util.Date와 java.util.Calendar의 단점을 개선하고, 더 직관적이고 사용하기 쉬운 클래스들을 제공합니다. 다음은 java.time 패키지의 주요 클래스들입니다.
1. LocalDate 클래스
LocalDate 클래스는 시간 정보 없이 날짜만을 표현합니다. 이 클래스를 사용하여 날짜를 생성, 조작, 비교할 수 있습니다.
| 
 1 
2 
3 
4 
5 
6 
7 
8 
 | 
 LocalDate today = LocalDate.now(); 
System.out.println(“Today: “ + today); 
LocalDate birthDate = LocalDate.of(1990, 1, 1); 
System.out.println(“Birth date: “ + birthDate); 
LocalDate nextWeek = today.plusWeeks(1); 
System.out.println(“Next week: “ + nextWeek); 
 | 
cs | 
2. LocalTime 클래스
LocalTime 클래스는 날짜 정보 없이 시간만을 표현합니다. 이 클래스를 사용하여 시간을 생성, 조작, 비교할 수 있습니다.
| 
 1 
2 
3 
4 
5 
6 
7 
8 
 | 
 LocalTime now = LocalTime.now(); 
System.out.println(“Current time: “ + now); 
LocalTime lunchTime = LocalTime.of(12, 30); 
System.out.println(“Lunch time: “ + lunchTime); 
LocalTime oneHourLater = now.plusHours(1); 
System.out.println(“One hour later: “ + oneHourLater); 
 | 
cs | 
3. LocalDateTime 클래스
LocalDateTime 클래스는 날짜와 시간 정보를 모두 포함합니다. 이 클래스를 사용하여 날짜와 시간을 생성, 조작, 비교할 수 있습니다.
| 
 1 
2 
3 
4 
5 
6 
7 
8 
 | 
 LocalDateTime now = LocalDateTime.now(); 
System.out.println(“Current date and time: “ + now); 
LocalDateTime meeting = LocalDateTime.of(2023, 4, 15, 14, 30); 
System.out.println(“Meeting: “ + meeting); 
LocalDateTime twoHoursLater = now.plusHours(2); 
System.out.println(“Two hours later: “ + twoHoursLater); 
 | 
cs | 
4. Instant 클래스
Instant 클래스는 에포크 시간(1970년 1월 1일 00:00:00 UTC)부터 경과한 시간을 나노초 단위로 표현합니다. 이 클래스는 타임스탬프 작업에 유용합니다.
| 
 1 
2 
3 
4 
5 
6 
7 
8 
 | 
 Instant now = Instant.now(); 
System.out.println(“Current timestamp: “ + now); 
Instant later = now.plusSeconds(3600); 
System.out.println(“One hour later: “ + later); 
long seconds = now.getEpochSecond(); 
System.out.println(“Seconds since epoch: “ + seconds); 
 | 
cs | 
5. Duration 클래스
Duration 클래스는 두 시간 사이의 간격을 나타냅니다. 이 클래스를 사용하여 시간 간격을 생성, 조작, 비교할 수 있습니다.
| 
 1 
2 
3 
4 
5 
6 
7 
8 
 | 
 LocalTime start = LocalTime.of(9, 0); 
LocalTime end = LocalTime.of(17, 0); 
Duration workHours = Duration.between(start, end); 
System.out.println(“Work hours: “ + workHours); 
Duration break = Duration.ofMinutes(30); 
System.out.println(“Break: “ + break); 
 | 
cs | 
6. Period 클래스
Period 클래스는 두 날짜 사이의 간격을 나타냅니다. 이 클래스를 사용하여 날짜 간격을 생성, 조작, 비교할 수 있습니다.
| 
 1 
2 
3 
4 
5 
6 
7 
8 
 | 
 LocalDate startDate = LocalDate.of(2023, 1, 1); 
LocalDate endDate = LocalDate.of(2023, 12, 31); 
Period period = Period.between(startDate, endDate); 
System.out.println(“Period: “ + period); 
Period quarterYear = Period.ofMonths(3); 
System.out.println(“Quarter year: “ + quarterYear); 
 | 
cs | 
java.time 패키지는 이전 버전의 Java 날짜와 시간 API의 단점을 해결하고, 더 직관적이고 사용하기 쉬운 인터페이스를 제공합니다. 이 패키지의 클래스들을 활용하여 날짜와 시간 관련 작업을 보다 효과적으로 처리할 수 있습니다.
이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

