Heim > Backend-Entwicklung > Golang > Wie kann ich die Differenz zwischen zwei Go „time.Time'-Objekten berechnen und formatieren?

Wie kann ich die Differenz zwischen zwei Go „time.Time'-Objekten berechnen und formatieren?

DDD
Freigeben: 2024-12-20 20:07:10
Original
684 Leute haben es durchsucht

How Can I Calculate and Format the Difference Between Two Go `time.Time` Objects?

Zeitdifferenzen mit time.Time-Objekten berechnen

Beim Programmieren mit Go ist die Darstellung von Zeitpunkten entscheidend. Der Typ time.Time bietet Funktionen zum Bearbeiten zeitbezogener Werte. Eine häufige Aufgabe ist die Berechnung der Differenz zwischen zwei Zeitpunkten.

Um die Zeitdifferenz zwischen zwei time.Time-Objekten zu ermitteln, können Sie die Methode time.Sub() verwenden. Das Ergebnis wird als time.Duration-Wert dargestellt.

time.Duration formatiert sich selbst so, dass der Zeitunterschied berücksichtigt wird. Zum Beispiel:

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)
}
Nach dem Login kopieren

Ausgabe:

2009-11-10 23:00:00 +0000 UTC
2009-11-10 23:05:41 +0000 UTC
5m41s
Nach dem Login kopieren

Wenn Sie die Zeit im Format HH:mm:ss wünschen, können Sie einen time.Time-Wert erstellen und dessen Zeit verwenden. Format()-Methode:

out := time.Time{}.Add(diff)
fmt.Println(out.Format("15:04:05"))
Nach dem Login kopieren

Ausgabe:

00:05:41
Nach dem Login kopieren

Dieser Ansatz eignet sich für Zeitunterschiede unter 24 Std. Wenn sich die Zeit jedoch über mehrere Tage oder mehr erstreckt, sollten Sie die Verwendung einer Lösung in Betracht ziehen, die größere Zeitunterschiede berücksichtigt, wie z. B. die in der folgenden Frage bereitgestellte Funktion:

  • golang time.Since() mit Monaten und Jahren

Das obige ist der detaillierte Inhalt vonWie kann ich die Differenz zwischen zwei Go „time.Time'-Objekten berechnen und formatieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage