자바 8 새 날짜 시간 클래스(3)
java.time 로 컬 날짜 시간 오프셋 을 처리 하 는 주요 종 류 는 java.time.Duration,java.time.Period 입 니 다.
;
Duration
정적 구조 요약
static Duration static Duration static Duration
between(LocalTime startInclusive,LocalTime endExclusive)of(long amount,TemporalUnit unit)ofHours(long hours)ofMinutes(long minutes)ofSeconds(long seconds)
두 개의 시간 차 를 사용 하여 Duration 을 생 성 합 니 다.Temporal 은 LocalDateTime,ZonedDateTime 등 지 정 된 TemperalUnit 을 사용 하여 Duration 을 생 성 합 니 다.
멤버 방법 요약
+long +Duration +long +List +Duration +boolean
toHours() / toMinutes() /toSeconds() toMillis() / toNanos()withSeconds(long seconds)getSeconds() / getNanos() getUnits() plus(long amountToAdd,TemporaUnit unit)plusHours(long)/plusMinute(long)/plusSeconds(long)isZero()
Duration 을 해당 단위 의 수치 로 변경 하여 수치 획득(효 과 는 toSeconds,toNanos)매개 변수 표를 획득 하여 Duration 에 대한 증감 검사 값 이 0 인지 확인 합 니 다.
Period
정적 구조 요약
static Period static Period static Period
between(LocalDate startInclusive,LocalDate endExclusive)of(int years,int months,int days)ofYears(long hours)ofMonths(long minutes)ofDayss(long seconds)
두 개의 시간 차 를 사용 하면 Duration 이 발생 합 니 다.Temporal 은 LocalDateTime,ZonedDateTime 등 지 정 된 수 치 를 사용 하여 Period 를 만 듭 니 다.
멤버 방법 요약
+long +Period +List +long +Period +boolean
toTotalMonths() withDays(long seconds)/withMonths/withYearsgetUnits() getYears() / getMonths() / getDays() plus(long amountToAdd,TemporaUnit unit)plusDays(long)/plusMonths(long)/plusYears(long)isZero()
Period 를 해당 단위 로 전환 하 는 수치 수정 수치 획득 매개 변수 표 획득 매개 변 수 를 가 져 와 Period 를 증감 하여 비어 있 는 지 판단 합 니 다.
사용 예시
import java.time.*;
....
// Temporal
LocalDate date1 = LocalDate.of(1997,1,1);
LocalDate date2 = LocalDate.now();
Period period = Period.between(date1,date2);
System.out.println("date1: "+date1+"
date2: "+date2);System.out.println("Period->years:"+period.getYears()+" months:"+period.getMonths()+" days:"+period.getDays());
LocalTime time1 = LocalTime.of(0,0,0);
LocalTime time2 = LocalTime.now();
System.out.println("time1: "+time1+"
time2: "+time2);Duration duration = Duration.between(time1,time2);
System.out.print("Duration->");
duration.getUnits().forEach( temporalUnit -> System.out.print(temporalUnit+": "+duration.get(temporalUnit)+" ") );
:
date1: 1997-01-01
date2: 2017-02-28
Period->years:20 months:1 days:27
time1: 00:00
time2: 19:21:16.062
Duration->Seconds: 69676 Nanos: 62000000
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
JPA + QueryDSL 계층형 댓글, 대댓글 구현(2)이번엔 전편에 이어서 계층형 댓글, 대댓글을 다시 리팩토링해볼 예정이다. 이전 게시글에서는 계층형 댓글, 대댓글을 구현은 되었지만 N+1 문제가 있었다. 이번에는 그 N+1 문제를 해결해 볼 것이다. 위의 로직은 이...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.