首頁 >後端開發 >Golang >Go中如何計算兩個時間實例之間的差異?

Go中如何計算兩個時間實例之間的差異?

Linda Hamilton
Linda Hamilton原創
2024-12-09 04:56:09226瀏覽

How to Calculate the Difference Between Two Time Instances in Go?

確定時差

您有兩個 time.Time 實例,您需要計算它們的小時、分鐘和秒差。考慮以下場景:

  • t1 = "2016-09-09 19:09:16 0530 IST"
    t2 = "2016-09-09 19:09:16 0530 IST(結果: 00:00:00)
  • t1 = "2016-09-14 14:12:48 0530 IST"
  • t2 = "2016-09-14 14:18:29 0530 IST

要計算差異,請使用 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)
}

對於HH:mm 的時間格式:ss,建構一個time.Time 值並使用它的Time.Format()方法:
2009-11-10 23:00:00 +0000 UTC
2009-11-10 23:05:41 +0000 UTC
5m41s

輸出:
out := time.Time{}.Add(diff)
fmt.Println(out.Format("15:04:05"))

這適用於 24 小時以下的時差。對於較大差異,請考慮使用包含天、月和年份的解決方案。
00:05:41

以上是Go中如何計算兩個時間實例之間的差異?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn