前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Go-标准库-time(二)

Go-标准库-time(二)

原创
作者头像
堕落飞鸟
发布2023-04-21 14:58:48
1460
发布2023-04-21 14:58:48
举报
文章被收录于专栏:飞鸟的专栏飞鸟的专栏

时间的计算

在 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 循环等待定时器触发。每次触发时,会将当前时间输出。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 时间的计算
    • 时间的加法
      • 时间的减法
      • 定时器
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档