time.Time 객체와의 시간 차이 계산
Go를 사용한 프로그래밍에서는 특정 시점을 나타내는 것이 중요합니다. time.Time 유형은 시간 관련 값을 조작하기 위한 기능을 제공합니다. 일반적인 작업 중 하나는 두 시점 간의 차이를 계산하는 것입니다.
두 time.Time 객체 간의 시간 차이를 얻으려면 time.Sub() 메서드를 활용할 수 있습니다. 결과는 time.Duration 값으로 표시됩니다.
time.Duration은 시간 차이를 수용하는 방식으로 형식을 지정합니다. 예:
package main import ( "fmt" "time" ) func main() { t1 := time.Now() t2 := t1.Add(time.Second * 341) fmt.Println(t1) fmt.Println(t2) diff := t2.Sub(t1) fmt.Println(diff) }
출력:
2009-11-10 23:00:00 +0000 UTC 2009-11-10 23:05:41 +0000 UTC 5m41s
HH:mm:ss 형식의 시간을 원하는 경우 time.Time 값을 생성하고 해당 시간을 사용할 수 있습니다. Format() 메소드:
out := time.Time{}.Add(diff) fmt.Println(out.Format("15:04:05"))
출력:
00:05:41
이것 이 접근 방식은 24시간 미만의 시차에 적합합니다. 그러나 시간이 며칠 이상 지속되는 경우 다음 질문에 제공된 함수와 같이 더 큰 시차를 수용하는 솔루션을 사용하는 것이 좋습니다.
위 내용은 두 Go `time.Time` 개체 간의 차이를 어떻게 계산하고 형식을 지정할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!