計算時間差。時間物件
在 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 值並使用其 Time。 Format()方法:
out := time.Time{}.Add(diff) fmt.Println(out.Format("15:04:05"))
輸出:
00:05:41
這種方法適合24小時以內的時差。但是,如果時間跨度多天或更長時間,請考慮使用適應較大時間差的解決方案,例如以下問題中提供的函數:
以上是如何計算和格式化兩個 Go `time.Time` 物件之間的差異?的詳細內容。更多資訊請關注PHP中文網其他相關文章!