//时间和日期相关函数
func main() {
//1.获取当前时间
now := time.Now()
fmt.Printf("now = %v, type = %T", now, now)
//2.通过now获取年月日时分秒
fmt.Println("年= ", now.Year())
fmt.Println("月= ", now.Month())
fmt.Println("日= ", now.Day())
fmt.Println("时= ", now.Hour())
fmt.Println("分= ", now.Minute())
fmt.Println("秒= ", now.Second())
//格式化日期时间
fmt.Printf("当前年月日 %d-%d-%d %d:%d:%d\n",
now.Year(), now.Month(), now.Day(),
now.Hour(), now.Minute(), now.Second())
dateStr := fmt.Sprintf("当前年月日 %d-%d-%d %d:%d:%d\n",
now.Year(), now.Month(), now.Day(),
now.Hour(), now.Minute(), now.Second())
fmt.Printf("dateStr=%v\n", dateStr)
//格式化日期的第二种方式time.Format()
fmt.Println(now.Format("2006-01-02 15:04:05"))
fmt.Println(now.Format("2006-01-02"))
fmt.Println(now.Format("15:04:05"))
//需求,每隔一秒钟打印一个数字,打印到100退出
/*
时间常量:
Nanosecond = 1纳秒
Microsecond = 1000*Nanosecond微秒
Millisecond = 1000*Microsecond毫秒
*/
i := 0
for {
i++
fmt.Println(i)
//休眠
time.Sleep(time.Second)
if i == 100 {
break
}
}
//时间戳(用于获取随机数字)
//Unix和UnixNano的使用
fmt.Printf("Unix时间戳=%v Unixnano时间戳=%v", now.Unix(), now.UnixNano())
}
计算拼接十万个字符所用时长
func main() {
start := time.Now().Unix()
timetest()
end := time.Now().Unix()
fmt.Println("所用时间为 ", end-start)
}
func timetest() {
str := "hello"
for i := 0; i < 100000; i++ {
str = str + strconv.Itoa(i)
}
}