時差の決定
time.Time インスタンスが 2 つあり、それらの差を時、分、秒で計算する必要があります。次のシナリオを考えてみましょう。
解
差を計算するには、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 で 2 つの時間インスタンスの差を計算するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。