目录日期包常用函数定时器打印定时器终止定时器注意事项日期包 常用函数 time.Now(): 获取当前时间 package main import ( "fmt" "
package main
import (
"fmt"
"time"
)
func main() {
now := time.Now()
fmt.Println(now)
}
package main
import (
"fmt"
"time"
)
func main() {
str := "2023-05-02 15:04:05"
t, err := time.Parse("2006-01-02 15:04:05", str)
if err != nil {
fmt.Println("parse error:", err)
return
}
fmt.Println(t)
}
解析时间字符串需要提供一个格式化字符串,其中2006、01、02、15、04、05是固定的,代表年、月、日、小时、分钟、秒。这是因为Go语言的发布日期是2006年1月2日15点04分05秒。
package main
import (
"fmt"
"time"
)
func main() {
now := time.Now()
str := now.Format("2006-01-02 15:04:05")
fmt.Println(str)
}
格式化字符串和解析字符串的字符串一样,都是由固定的数字和符号组成,代表年月日等。这里的now.Format("2006-01-02 15:04:05")表示将时间now格式化为"2006-01-02 15:04:05"的字符串。
package main
import (
"fmt"
"time"
)
func main() {
t1 := time.Now()
time.Sleep(time.Second * 2)
t2 := time.Now()
duration := t2.Sub(t1)
fmt.Println(duration.Seconds())
}
这里使用了time包中的Duration类型,它表示一个时间段。可以使用time.Now()获取当前时间,使用time.Sleep()等待一段时间后再获取当前时间,然后使用t2.Sub(t1)计算时间差。最后可以使用duration.Seconds()将时间差转换为秒数。
在Go语言中,可以使用time包来实现定时器的功能。time包中提供了一个名为Tick的函数,可以用来创建一个定时器。
Tick函数接收一个Duration类型的参数d,表示定时器的时间间隔。它会返回一个通道(channel),每次定时器到期时,该通道就会收到一个时间类型的值。
以下是一个简单的定时器示例,它每隔1秒打印一次当前时间:
ticker := time.NewTicker(time.Second)
for time := range ticker.C {
fmt.Println(time)
}
使用Stop()方法终止定时器
ticker := time.NewTicker(time.Second)
n := 5
for t := range ticker.C {
n--
fmt.Println(t)
if n == 0 {
ticker.Stop()
break
}
}
输出结果:
到此这篇关于Go语言中日期包的具体使用的文章就介绍到这了,更多相关Go 日期包内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
--结束END--
本文标题: Go语言中日期包(time包)的具体使用
本文链接: https://lsjlt.com/news/212539.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-04-05
2024-04-05
2024-04-05
2024-04-04
2024-04-05
2024-04-05
2024-04-05
2024-04-05
2024-04-04
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0