java에서 제공하는 클래스중 날짜, 시간 정보를 제공해주는 클래스가 존재한다. 크게 3가지 종류가 있는데 다음과 같다
구분 용도
---------------------------------------------------------------
LocalDate 날짜 정보만 필요할 때 사용
LocalTime 시간 정보만 필요할 때 사용
LocalDateTime 날짜 정보와 시간 정보 둘다 필요할 때 사용
(1) LocalDate
// 로컬 컴퓨터의 현재 날짜 정보를 저장한 LocalDate 객체를 리턴
LocalDate curDate = LocalDate.now(); // result : 2022-11-07;
// 파라미터로 주어진 날짜 정보를 저장한 LocalDate 객체를 리턴
LocalDate newDate = LocalDate.of(2022,11,06) // result : 2022-11-06
(2) LocalTime
// 로컬 컴퓨터의 현재 시간 정보를 저장한 LocalDate 객체를 리턴.
LocalTime currentTime = LocalTime.now(); // reuslt : 18:57:29.670239400
// 파라미터로 주어진 시간 정보를 저장한 LocalTime 객체를 리턴.
LocalTime targetTime = LocalTime.of(22,50,55); // result : 22:50:55
// 끝에 4번째 매개변수는 nanoSecond 인데 선택 값이다 굳이 쓰지 않아도 된다.
(3) LocalDateTime
// 로컬 컴퓨터의 현재 날짜와 시간 정보
LocalDateTime currentDateTime = LocalDateTime.now(); // result : 2022-11-07T18:57:29.670239400
LocalDateTime targetDateTime = LocalDateTime.of(2019, 11, 12, 12, 32, 22);
// result : 2022-11-06T13:22:57
// 여기도 second,nanoSecond 매개변수는 필수가 아닌 선택입니다.
- 날짜 더하기
LocalDateTime에서는 몇일 후, 몇년 후 등 코드에서 사용할만한 날짜가 있기때문에, 메소드를 활용하여 날짜를 더하거나 빼줄 수 있다. 사용할 수 있는 메소드는 다음과 같다.
method description
--------------------------------------------------------------------------------------
plusYears() 년
minusYears() 년
plusMonths() 개월
minusMonths() 개월
plusWeeks() 주
minusWeeks() 주
plusDays() 날짜
minusDays() 날짜
plusHours() 시
minusHours() 시
plusMinutes() 분
minusMinutes() 분
plusSeconds() 초
minusSeconds() 초
plusNanos() 밀리초
minusNanos() 밀리초
(4) 날짜 표기형식 변경
DateTimeFormmater 클래스를 활용해 다양한 표기형식을 표현할 수 있다. 만약 내가 원하는 형식이 있다면 임의의 형식을 다음 메소드를 통해 만들 수 있다
DateTimeFormatter newFormatter = DateTimeFormatter.ofPattern("yyyy/MM/dd");
String myDate = newFormatter.format(LocalDate.now());
System.out.println(myDate); // result: 2022/11/07
yyyy에는 년도, MM에는 월, dd에는 날짜를 대입해준다.
'Java' 카테고리의 다른 글
14. Java(컬렉션), 리스트, 셋, 맵 (0) | 2022.11.08 |
---|---|
13. Java, 컬렉션(Collection) (0) | 2022.11.08 |
11. Java(기초), 예외 처리(Exception) (0) | 2022.11.07 |
10. Java(기초), 객체 지향 언어 - 추상클래스, 인터페이스 (0) | 2022.11.07 |
09. Java(기초), 객체 지향 언어 - 접근제어자(Access modifier) (0) | 2022.11.07 |