Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Mengira dan Memformat Perbezaan Masa dalam Go menggunakan time.Time?
Mengira Perbezaan Masa dalam Go dengan masa.Masa
In Go, mendapatkan perbezaan antara dua masa. Objek masa adalah mudah menggunakan Sub () kaedah. Semasa time.Sub() mengembalikan nilai masa. Tempoh, mudah untuk mentafsir nilai ini dari segi jam, minit dan saat.
Pertimbangkan coretan kod berikut:
import ( "fmt" "time" ) func main() { // Create two time.Time objects t1 := time.Date(2016, 9, 9, 19, 9, 16, 0, time.UTC) t2 := time.Date(2016, 9, 9, 19, 9, 16, 0, time.UTC) // Use the Sub() method to get the time difference diff := t2.Sub(t1) // By default, a time.Duration value formats itself intelligently fmt.Println("Time difference:", diff) }
Output:
Time difference: 0s
Dalam contoh ini, memandangkan dua masa adalah sama, perbezaannya ialah sifar dan diformatkan sebagai "0s".
Untuk mendapatkan perbezaan masa dalam format yang lebih khusus, seperti "HH:mm:ss", kita boleh membina masa.Nilai masa dari masa.Tempoh dan kemudian gunakan Format( ) kaedah.
// Construct a time.Time value from the time difference out := time.Time{}.Add(diff) // Use the time.Time value's Format() method formattedDiff := out.Format("15:04:05") fmt.Println("Formatted time difference:", formattedDiff)
Output:
Formatted time difference: 00:00:00
Perhatikan bahawa pendekatan ini hanya sesuai untuk perbezaan masa dalam masa 24 jam. Untuk perbezaan masa yang ketara yang merangkumi hari, bulan atau tahun, pengiraan yang lebih rumit diperlukan.
Atas ialah kandungan terperinci Bagaimana untuk Mengira dan Memformat Perbezaan Masa dalam Go menggunakan time.Time?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!