当前位置:网站首页>[go ~ 0 to 1] obtain timestamp, time comparison, time format conversion, sleep and timer on the seventh day
[go ~ 0 to 1] obtain timestamp, time comparison, time format conversion, sleep and timer on the seventh day
2022-07-07 08:15:00 【Autumn sunset】
1. Time stamp
1.1 Get the current timestamp
Time stamp means 1970 year 1 month 1 Japan 0 when 0 branch To the present Millisecond value
// Get the timestamp
func getTimeStamp() {
now := time.Now()
unix := now.Unix()
fmt.Println(unix)
}
1.2 Timestamp conversion
now := time.Now()
// now Is the return value
unix := now.Unix()
fmt.Println(unix)
// Convert timestamps to time
// time It's a bag Unix It's the method name
t := time.Unix(unix, 0)
fmt.Println(t)
2. Time plus minus , Compare
2.1 Get the current time year month Japan
// Get the current time
now := time.Now()
fmt.Println(now)
// Get current year
year := now.Year()
// Get the current month
month := now.Month()
// Get current day
day := now.Day()
// Get the current hour
hour := now.Hour()
// Get the current minute
minute := now.Minute()
// Get the current second
second := now.Second()
fmt.Printf(" The current time is %d year %d month %d Japan %d when %d branch %d second ", year, month, day, hour, minute, second)
2.2 Add the time
// Get the current time
now := time.Now()
// The current time plus 1.5 Hours = 1 Hours 30 minute
duration := time.Duration(time.Hour + time.Duration(30)*time.Minute)
add := now.Add(duration)
fmt.Println(add)
2.3 Calculate the time interval
// Calculation 2018 year 8 month 8 Japan To 1999 year 8 month 8 The time interval between days
// East eight
location, _ := time.LoadLocation("Asia/Shanghai")
new := time.Date(2018, 8, 8, 0, 0, 0, 0, location)
old := time.Date(1999, 8, 8, 0, 0, 0, 0, location)
sub := new.Sub(old)
fmt.Println(sub)
2.4 Judge whether the time is before Before
// Get the current time
now := time.Now()
// Subtract... From the current time 30 minute Note that Minus sign
duration := time.Minute * 30
old := now.Add(-duration)
// Judge old Whether in new Before
flag := old.Before(now)
fmt.Println(flag) // Output results true
2.5 Judge whether the current time is later After
// Get the current time
now := time.Now()
// current time Extra day
add := now.Add(time.Duration(time.Hour) * 24)
// Judge add Whether in now after
println(add.After(now)) // true
3. Sleep And Timer
3.1 Sleep
fmt.Println(" Sleep 5 second ", time.Now().Second())
// The program sleeps here 5 second
time.Sleep(time.Second * 5)
fmt.Println(" End of sleep ", time.Now().Second())
3.2 Timer
num := 0
// Define a timer that executes once per second
for t := range time.Tick(time.Second) {
// perform 5 Seconds later
if num++; num >= 5 {
return
}
fmt.Println(t.Second())
}
4. Time formatting and conversion
4.1 Time format output
| Fixed number | Corresponding format |
|---|---|
| 2006 | yyyy |
| 01 | MM |
| 02 | dd |
| 15 | HH |
| 04 | mm |
| 05 | SS |
// Get the current time
now := time.Now()
// Format the current time
format := now.Format("2006/01/02 15/04/05")
fmt.Println(format)
4.2 Convert string to Time
str := "2022/07/04 22/40/50"
t, _ := time.Parse("2006/01/02 15/04/05", str)
fmt.Println(t) // Default time zone 2022-07-04 22:40:50 +0000 UTC
// Resolve in the specified time zone
location, _ := time.LoadLocation("Asia/Shanghai")
inLocation, _ := time.ParseInLocation("2006/01/02 15/04/05", str, location)
fmt.Println(inLocation) // East eight 2022-07-04 22:40:50 +0800 CST
end practice
1. Count the running time of the program , Accurate to nanoseconds
begin := time.Now().Nanosecond()
beginUnixMilli := time.Now().UnixMilli()
beginSecond := time.Now().Second()
strToTime()
fmt.Printf(" The program runs %d nanosecond \n", time.Now().Nanosecond()-begin)
fmt.Printf(" The program runs %d millisecond \n", time.Now().UnixMilli()-beginUnixMilli)
fmt.Printf(" The program runs %d second ", time.Now().Second()-beginSecond)
边栏推荐
- JS copy picture to clipboard read clipboard
- Zcmu--1492: problem d (C language)
- 藏书馆App基于Rainbond实现云原生DevOps的实践
- [quick start of Digital IC Verification] 14. Basic syntax of SystemVerilog learning 1 (array, queue, structure, enumeration, string... Including practical exercises)
- Call pytorch API to complete linear regression
- eBPF Cilium实战(2) - 底层网络可观测性
- Relevant data of current limiting
- Zcmu--1396: queue problem (2)
- LeetCode简单题之字符串中最大的 3 位相同数字
- 拓维信息使用 Rainbond 的云原生落地实践
猜你喜欢

解析创新教育体系中的创客教育

Empire CMS collection Empire template program general

漏洞复现-Fastjson 反序列化

Unityhub cracking & unity cracking

Rainbond 5.7.1 支持对接多家公有云和集群异常报警

eBPF Cilium实战(1) - 基于团队的网络隔离

Vulnerability recurrence easy_ tornado

The zblog plug-in supports the plug-in pushed by Baidu Sogou 360

【踩坑系列】uniapp之h5 跨域的问题

Battery and motor technology have received great attention, but electric control technology is rarely mentioned?
随机推荐
Pytoch (VI) -- model tuning tricks
Interactive book delivery - signed version of Oracle DBA work notes
【数字IC验证快速入门】14、SystemVerilog学习之基本语法1(数组、队列、结构体、枚举、字符串...内含实践练习)
Battery and motor technology have received great attention, but electric control technology is rarely mentioned?
Bayes' law
OpenVSCode云端IDE加入Rainbond一体化开发体系
Notes on PHP penetration test topics
Zcmu--1492: problem d (C language)
复杂网络建模(二)
game攻防世界逆向
LeetCode简单题之找到一个数字的 K 美丽值
解析机器人科技发展观对社会研究论
The largest 3 same digits in the string of leetcode simple question
漏洞复现-Fastjson 反序列化
Easy to understand SSO
Call pytorch API to complete linear regression
互动送书-《Oracle DBA工作笔记》签名版
追风赶月莫停留,平芜尽处是春山
Lattice coloring - matrix fast power optimized shape pressure DP
What is the function of paralleling a capacitor on the feedback resistance of the operational amplifier circuit