Java LocalDate 클래스는 yyyy-mm-dd의 기본 형식으로 날짜를 나타내는 불변 클래스입니다. Object 클래스를 상속하고 ChronoLocalDate 인터페이스를 구현합니다.
Java LocalDate 클래스 선언
java.time.LocalDate 클래스의 선언을 살펴보겠습니다.
public final class LocalDate extends Object implements Temporal, TemporalAdjuster, ChronoLocalDate, Serializable
Java LocalDate의 메소드
방법 | 설명 |
---|---|
LocalDateTime atTime(int 시, int 분) | 이 날짜를 시간과 결합하여 LocalDateTime을 만드는 데 사용됩니다. |
int CompareTo(ChronoLocalDate 기타) | 이 날짜를 다른 날짜와 비교하는 데 사용됩니다. |
부울 같음(객체 obj) | 이 날짜가 다른 날짜와 같은지 확인하는 데 사용됩니다. |
문자열 형식(DateTimeFormatter 포맷터) | 지정된 포맷터를 사용하여 이 날짜의 형식을 지정하는 데 사용됩니다. |
int get(TemporalField 필드) | 이 날짜부터 지정된 필드의 값을 int로 가져오는 데 사용됩니다. |
부울 isLeapYear() | ISO 역산 달력 시스템 규칙에 따라 해당 연도가 윤년인지 확인하는 데 사용됩니다. |
LocalDate minusDays(long daysToSubtract) | 지정된 일수를 뺀 이 LocalDate의 복사본을 반환하는 데 사용됩니다. |
LocalDate minusMonths(긴 개월ToSubtract) | 지정된 개월 수를 뺀 이 LocalDate의 복사본을 반환하는 데 사용됩니다. |
지금 정적 LocalDate() | 기본 시간대의 시스템 시계에서 현재 날짜를 얻는 데 사용됩니다. |
LocalDate plusDays(long daysToAdd) | 지정된 일수가 추가된 이 LocalDate의 복사본을 반환하는 데 사용됩니다. |
LocalDate plusMonths(긴 개월ToAdd) | 지정된 개월 수를 추가하여 이 LocalDate의 복사본을 반환하는 데 사용됩니다. |
LocalDate plusMonths(긴 개월ToAdd) | 지정된 개월 수를 추가하여 이 LocalDate의 복사본을 반환하는 데 사용됩니다. |
int getDayOfMonth() | 날짜 필드를 가져옵니다. |
DayOfWeek getDayOfWeek() | 열거형 DayOfWeek인 요일 필드를 가져옵니다. |
int getDayOfYear() | 연도별 필드를 가져옵니다. |
월 getMonth() | Month 열거형을 사용하여 연도별 월 필드를 가져옵니다. |
int getMonthValue() | 1부터 12까지의 연도 필드를 가져옵니다. |
정수 getYear() | 연도 필드를 가져옵니다. |
정수 길이OfMonth() | 이 날짜가 나타내는 월의 길이를 반환합니다. |
정수 길이() | 이 날짜가 나타내는 연도의 길이를 반환합니다. |
정적 LocalDate ofYearDay(int 연도, int dayOfYear) | 연도 및 일자로부터 LocalDate 인스턴스를 얻습니다. |
정적 LocalDate 구문 분석(CharSequence 텍스트) | 2007-12-03과 같은 텍스트 문자열에서 LocalDate 인스턴스를 얻습니다. |
정적 LocalDate 구문 분석(CharSequence 텍스트, DateTimeFormatter 포맷터) | 특정 포맷터를 사용하여 텍스트 문자열에서 LocalDate 인스턴스를 가져옵니다. |
자바 LocalDate 예
now(), minusDays(), plusDays()와 같은 LocalDate 클래스의 메소드를 시연하는 프로그램입니다.
LocalDateExample1.java
import java.time.LocalDate; public class LocalDateExample1 { public static void main(String[] args) { LocalDate date = LocalDate.now(); LocalDate yesterday = date.minusDays(1); LocalDate tomorrow = yesterday.plusDays(2); System.out.println('Today date: '+date); System.out.println('Yesterday date: '+yesterday); System.out.println('Tomorrow date: '+tomorrow); } }
산출:
Today date: 2017-01-13 Yesterday date: 2017-01-12 Tomorrow date: 2017-01-14
LocalDate 클래스의 isLeapYear() 메소드를 시연하는 프로그램입니다.
LocalDateExample2.java
import java.time.LocalDate; public class LocalDateExample2 { public static void main(String[] args) { LocalDate date1 = LocalDate.of(2017, 1, 13); System.out.println(date1.isLeapYear()); LocalDate date2 = LocalDate.of(2016, 9, 23); System.out.println(date2.isLeapYear()); } }
산출:
false true
LocalDate 클래스의 atTime() 메소드를 시연하는 프로그램입니다.
LocalDateExample3.java
import java.time.*; public class LocalDateExample3 { public static void main(String[] args) { LocalDate date = LocalDate.of(2017, 1, 13); LocalDateTime datetime = date.atTime(1,50,9); System.out.println(datetime); } }
산출:
2017-01-13T01:50:09
LocalDate 클래스의 format() 메소드를 보여주는 프로그램
LocalDateExample4.java
import java.time.LocalDate; import java.time.format.DateTimeFormatter; public class LocalDateExample4 { public static void main(String ar[]) { // Converting LocalDate to String // Example 1 LocalDate d1 = LocalDate.now(); String d1Str = d1.format(DateTimeFormatter.ISO_DATE); System.out.println('Date1 in string : ' + d1Str); // Example 2 LocalDate d2 = LocalDate.of(2002, 05, 01); String d2Str = d2.format(DateTimeFormatter.ISO_DATE); System.out.println('Date2 in string : ' + d2Str); // Example 3 LocalDate d3 = LocalDate.of(2016, 11, 01); String d3Str = d3.format(DateTimeFormatter.ISO_DATE); System.out.println('Date3 in string : ' + d3Str); } }
산출:
Date1 in string : 2021-09-13 Date2 in string : 2002-05-01 Date3 in string : 2016-11-01
LocalDate 클래스의 구문 분석() 메소드를 보여주는 프로그램
LocalDateExample5.java
import java.time.LocalDate; // String to LocalDate in java 8 public class LocalDateExample5 { public static void main(String ar[]) { // Example 1 String dInStr = '2011-09-01'; LocalDate d1 = LocalDate.parse(dInStr); System.out.println('String to LocalDate : ' + d1); // Example 2 String dInStr2 = '2015-11-20'; LocalDate d2 = LocalDate.parse(dInStr2); System.out.println('String to LocalDate : ' + d2); } }
산출:
String to LocalDate : 2011-09-01 String to LocalDate : 2015-11-20