Go-标准库-time(二)

2023-04-21 14:58:48 浏览数 (1)

时间的计算

在 Go 中,我们可以对时间对象进行加、减等运算,以实现时间的计算。下面是几个常用的时间计算示例。

时间的加法

我们可以使用 time.Add() 方法对时间对象进行加法运算。其基本用法如下:

代码语言:javascript复制
t1 := time.Date(2023, time.April, 22, 0, 0, 0, 0, time.Local)
t2 := t1.Add(time.Hour * 24)
fmt.Println(t2)

上述代码将时间对象 t1 加上一天(即 24 小时),并将结果赋值给 t2。输出结果为:

代码语言:javascript复制
2023-04-23 00:00:00  0800 CST

时间的减法

我们可以使用 time.Sub() 方法对两个时间对象进行减法运算,以计算它们之间的时间间隔。其基本用法如下:

代码语言:javascript复制
t1 := time.Date(2023, time.April, 22, 0, 0, 0, 0, time.Local)
t2 := time.Date(2023, time.April, 20, 0, 0, 0, 0, time.Local)
duration := t1.Sub(t2)
fmt.Println(duration.Hours())

上述代码将时间对象 t1 减去时间对象 t2,得到它们之间的时间间隔,并将结果转换为小时数输出。输出结果为:

代码语言:javascript复制
48

定时器

在 Go 中,我们可以使用 time.Tick() 方法创建一个定时器。其基本用法如下:

代码语言:javascript复制
ticker := time.Tick(time.Second)
for now := range ticker {
    fmt.Println(now)
}

上述代码将创建一个每秒触发一次的定时器,并使用 range 循环等待定时器触发。每次触发时,会将当前时间输出。

go

0 人点赞