GO获取时间并处理

package main

import (
	"fmt"
	"strconv"
	"time"
)

func test() {
	str := ""
	for i := 0; i < 100000; i++ {
		str += "hello" + strconv.Itoa(i) //将int转为字符串
	}
}
func main() {
	//获取当前时间 格式未进行处理
	now := time.Now()
	fmt.Println(now)
	//通过now获取年月日时分秒
	fmt.Printf("%v年-%v月-%v日 %v:%v:%v\n",now.Year(),int(now.Month()),now.Day(),now.Hour(),now.Minute(),now.Second())
	//第一种:可以用Sprintf来拿到格式化后的字符串来赋值给一个变量
	strDate :=fmt.Sprintf("%d年-%d月-%d日 %d:%d:%d",now.Year(),int(now.Month()),now.Day(),now.Hour(),now.Minute(),now.Second())
	fmt.Println(strDate)
	//第二种 后面字符串的年月日时分秒是固定写法
	fmt.Printf(now.Format("2006/01/02 15:04:05"))
	fmt.Println()
	//Unix和UnixNano的使用
	fmt.Printf("Unix=%v\n",now.Unix())//普通时间戳
	fmt.Printf("UnixNano=%v\n",now.UnixNano())//纳秒时间戳
	//格式化时间戳
	str := now.Unix()
	fmt.Println(time.Unix(str,0).Format("2006-01-02 15:04:05"))
	//字符串转时间戳
	tm2, _ := time.Parse("01/02/2006", "10/05/2021")
	fmt.Println(tm2.Unix())
	//练习:统计这个方法执行用了多久
	start := now.Unix()
	fmt.Println(start)
	test()
	end := now.Unix()
	fmt.Println(end)
	fmt.Printf("执行test()用了%v秒\n", end-start)

}

  

posted @ 2021-05-10 22:01  不吃肉的羊  阅读(238)  评论(0编辑  收藏  举报