Apakah kaedah pemprosesan masa dalam bahasa Go?

王林
Lepaskan: 2023-06-10 21:42:13
asal
1481 orang telah melayarinya

Bahasa Go ialah bahasa pengaturcaraan moden, dan masa memainkan peranan yang sangat penting dalam pembangunan. Bahasa Go menyediakan beberapa fungsi dan struktur masa terbina dalam untuk menjadikan pemprosesan masa lebih mudah. Dalam artikel ini, kami akan memperkenalkan beberapa kaedah pemprosesan masa yang biasa digunakan dalam bahasa Go.

  1. masa.Now()

Kita boleh menggunakan fungsi time.Now() untuk mendapatkan masa semasa:

now := time.Now()
fmt.Println(now)
Salin selepas log masuk

Output:

2019-06-13 14:30:10.12345 +0800 CST m=+0.000000001
Salin selepas log masuk

Seperti yang anda lihat, format output ialah YYYY-MM-DD HH:mm:ss.nnnnnn +0800 CST m=+0.000000001, dengan YYYY mewakili tahun, MM mewakili bulan, DD mewakili hari, HH mewakili jam, mm mewakili minit dan ss mewakili Saat, nnnnnn mewakili nanosaat, +0800 mewakili zon waktu, CST mewakili nama zon waktu, m=+0.000000001 mewakili masa relatif, iaitu masa dari 0:00:00 pada 1 Januari 1970. Anda boleh memilih maklumat masa yang diperlukan mengikut keperluan anda.

  1. Cap Masa

Cap masa Unix ialah bilangan saat dari 1 Januari 1970, 0:00:00 hingga sekarang. Dalam bahasa Go, kita boleh menggunakan fungsi time.Unix() untuk menukar saat kepada jenis masa atau menggunakan jenis masa untuk mendapatkan cap masa yang sepadan.

Dapatkan cap masa masa semasa:

now := time.Now().Unix()
fmt.Println(now)
Salin selepas log masuk

Output:

1560425789
Salin selepas log masuk

Tukar cap masa kepada jenis masa:

timestamp := 1560425789
t := time.Unix(timestamp, 0)
fmt.Println(t)
Salin selepas log masuk

Output:

2019-06-13 14:43:09 +0800 CST
Salin selepas log masuk
  1. Pemformatan masa

Dalam bahasa Go, kita boleh menggunakan fungsi time.Format() untuk menukar jenis masa kepada jenis rentetan. Dengan mentakrifkan beberapa aksara rujukan pemformatan khusus, kami boleh memaparkan masa mengikut cara yang kami perlukan.

Contoh:

t := time.Now()
fmt.Println(t.Format("2006-01-02 15:04:05"))
Salin selepas log masuk

Output:

2019-06-13 14:50:11
Salin selepas log masuk

"2006-01-02 15:04:05" dalam kod di atas ialah aksara rujukan format masa, yang khusus maksudnya adalah seperti berikut :

2006:年
01:月
02:日
15:小时
04:分钟
05:秒
Salin selepas log masuk
  1. Tambahan dan penolakan masa

Dalam bahasa Go, kita boleh menggunakan fungsi masa.Tambah() untuk menambah dan menolak masa. Parameter fungsi Add() ialah jenis Tempoh, mewakili tempoh masa untuk ditambah atau ditolak. Di bawah ialah beberapa kod sampel yang menggunakan fungsi Add() untuk menambah dan menolak masa.

Contoh:

t := time.Now()
fmt.Println(t.Add(10 * time.Minute))
fmt.Println(t.Add(24 * time.Hour))
Salin selepas log masuk

Output:

2019-06-13 15:07:34.877146776 +0800 CST m=+600.000277511
2019-06-14 14:57:34.877146776 +0800 CST
Salin selepas log masuk
  1. Pengiraan perbezaan masa

Dalam bahasa Go, kita boleh menggunakan masa jenis mewakili perbezaan antara dua tempoh masa. Di bawah ialah beberapa kod sampel yang menggunakan Tempoh untuk mengira perbezaan masa.

Contoh:

t1 := time.Date(2019, time.June, 13, 12, 00, 55, 0, time.Local)
t2 := time.Date(2019, time.June, 13, 14, 20, 30, 0, time.Local)
diff := t2.Sub(t1)
fmt.Println(diff)
Salin selepas log masuk

Output:

2h19m35s
Salin selepas log masuk
  1. Pemasa

Dalam bahasa Go, kita boleh menggunakan masa. Jenis pemasa Cipta a pemasa dan gunakan saluran untuk mendapatkan peristiwa pencetus pemasa. Di bawah adalah contoh kod mudah.

Contoh:

func test() {
    fmt.Println("test")
}

func main() {
    timer := time.NewTimer(time.Second * 2)
    <-timer.C
    test()
}
Salin selepas log masuk

Dalam kod di atas, pemasa 2 saat dicipta, kemudian acara dibaca dari saluran pemasa.C, dan akhirnya fungsi test() dipanggil.

Ringkasan

Artikel ini memperkenalkan beberapa kaedah pemprosesan masa yang biasa digunakan dalam bahasa Go, termasuk mendapatkan masa semasa, cap masa, pemformatan masa, penambahan dan penolakan masa, pengiraan perbezaan masa dan pemasa, dsb. . Kaedah pengurusan masa ini sangat penting dalam pembangunan harian, dan kita harus menguasainya secepat mungkin.

Atas ialah kandungan terperinci Apakah kaedah pemprosesan masa dalam bahasa Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!