go语言基础之time时间处理
package main
import (
"fmt"
"time"
)
func main() {
// 获取当前时间
now := time.Now()
fmt.Println("当前时间:", now)
// 获取时间的年月日时分秒
fmt.Printf("年: %d, 月: %d, 日: %d, 时: %d, 分: %d, 秒: %d\n",
now.Year(), now.Month(), now.Day(),
now.Hour(), now.Minute(), now.Second())
// 时间格式化为字符串
fmt.Println("格式化时间:", now.Format("2006-01-02 15:04:05"))
// 时间间隔的计算
duration := 2 * time.Hour // 定义一个2小时的时间间隔
fmt.Println("时间间隔:", duration)
// 时间的加减
future := now.Add(duration) // 当前时间加上2小时
past := now.Add(-duration) // 当前时间减去2小时
fmt.Println("未来时间:", future)
fmt.Println("过去时间:", past)
// 计算两个时间点之间的差异
elapsed := future.Sub(now)
fmt.Println("经过时间:", elapsed)
// 定时器示例
timer := time.NewTimer(duration)
go func() {
<-timer.C
fmt.Println("定时器触发时间:", time.Now())
}()
timer.Reset(duration) // 重置定时器
time.Sleep(3 * duration) // 等待足够长时间以便看到输出
}
这段代码展示了如何在Go语言中处理时间,包括获取当前时间、获取时间的特定部分、时间格式化、时间间隔的计算、时间的加减以及定时器的使用。通过这些基本操作,开发者可以更好地理解和使用Go语言进行时间相关的编程工作。
评论已关闭