Go时间
package main import (
"time"
"fmt"
"math/rand"
) func main() {
/*
time包:
1年=365天,day
1天=24小时,hour
1小时=60分钟,minute
1分钟=60秒,second
1秒钟=1000毫秒,millisecond
1毫秒=1000微秒,microsecond-->μs
1微秒=1000纳秒,nanosecond-->ns
1纳秒=1000皮秒,picosecond-->ps
*/ //1.获取当前的时间
t1 := time.Now()
fmt.Printf("%T\n",t1) //time.Time
fmt.Println(t1) //2019-06-26 10:46:40.349196 +0800 CST m=+0.000495846 //2.获取指定的时间
t2 := time.Date(2008,7,15,16,30,28,0,time.Local)
fmt.Println(t2) //2008-07-15 16:30:28 +0800 CST //3.time-->string之间的转换
/*
t1.Format("格式模板")-->string
模板的日期必须是固定:06-1-2-3-4-5
*/
s1 := t1.Format("2006-1-2 15:04:05") //模板
fmt.Println(s1) //2020-2-2 07:52:44 s2 := t1.Format("2006/01/02") //模板
fmt.Println(s2) //2020/02/02 //string-->time
/*
time.Parse("模板",str)-->time,err
*/
s3 := "1999年10月10日"//string
t3 ,err := time.Parse("2006年01月02日",s3)
if err != nil{
fmt.Println("err:",err)
}
fmt.Println(t3) //1999-10-10 00:00:00 +0000 UTC
fmt.Printf("%T\n",t3) //time.Time fmt.Println(t1.String()) //2020-02-02 07:52:44.1887023 +0800 CST m=+0.002992701 //4.根据当前时间,获取指定的内容
year,month,day := t1.Date() //年,月,日
fmt.Println(year,month,day) //2020 February 2 hour,min,sec := t1.Clock() //时,分,秒
fmt.Println(hour,min,sec) //7 52 44 year2 := t1.Year()
fmt.Println("年:",year2) //年: 2020
fmt.Println(t1.YearDay()) //33 month2 := t1.Month()
fmt.Println("月:",month2) //月: February
fmt.Println("日:",t1.Day()) //日: 2
fmt.Println("时:",t1.Hour()) //时: 7
fmt.Println("分钟:",t1.Minute()) //分钟: 52
fmt.Println("秒:",t1.Second()) //秒: 44
fmt.Println("纳秒:",t1.Nanosecond()) //纳秒: 188702300 fmt.Println(t1.Weekday()) //Sunday //5.时间戳:指定的日期,距离1970年1月1日0点0时0分0秒的时间差值:秒,纳秒
t4 := time.Date(1970,1,1,1,0,0,0,time.UTC)
timeStamp1:=t4.Unix() //秒的差值
fmt.Println(timeStamp1)//3600
timeStamp2 := t1.Unix()
fmt.Println(timeStamp2) //1580601164 timeStamp3 := t4.UnixNano()
fmt.Println(timeStamp3) //3600 000 000 000
timeStamp4 := t1.UnixNano()
fmt.Println(timeStamp4) //1580601164188702300 //6.时间间隔
t5 := t1.Add(time.Minute)
fmt.Println(t1) //2020-02-02 07:52:44.1887023 +0800 CST m=+0.002992701
fmt.Println(t5) //2020-02-02 07:53:44.1887023 +0800 CST m=+60.002992701
fmt.Println(t1.Add(24 * time.Hour))
//2020-02-03 07:52:44.1887023 +0800 CST m=+86400.002992701 t6 := t1.AddDate(1,0,0)
fmt.Println(t6) //2021-02-02 07:52:44.1887023 +0800 CST d1 := t5.Sub(t1)
fmt.Println(d1) //1m0s //7.睡眠
time.Sleep(3 *time.Second) //让当前的程序进入睡眠状态
fmt.Println("main。。。over。。。。。") //睡眠[1-10]的随机秒数
rand.Seed(time.Now().UnixNano())
randNum := rand.Intn(10) + 1 //int
fmt.Println(randNum) //10
time.Sleep(time.Duration(randNum)*time.Second)
fmt.Println("睡醒了。。")
}
Go时间的更多相关文章
- 一起学微软Power BI系列-使用技巧(5)自定义PowerBI时间日期表
1.日期函数表作用 经常使用Excel或者PowerBI,Power Pivot做报表,时间日期是一个重要的纬度,加上做一些钻取,时间日期函数表不可避免.所以今天就给大家分享一个自定义的做日期表的方法 ...
- 关于这段时间学习 EntityFramework的 一点感悟
Ado.Net,用了N多年,Entity Framework也关注了很多年. 每当项目转型的时候,就花费大巴的时间,学习一番,潮流的东西. 这个Orm很多,这个EF很火,这么多年了,我还是不敢用,虽然 ...
- C++中的时间函数
C++获取时间函数众多,何时该用什么函数,拿到的是什么时间?该怎么用?很多人都会混淆. 本文是本人经历了几款游戏客户端和服务器开发后,对游戏中时间获取的一点总结. 最早学习游戏客户端时,为了获取最精确 ...
- C语言 · 时间转换
问题描述 给定一个以秒为单位的时间t,要求用"<H>:<M>:<S>"的格式来表示这个时间.<H>表示时间,<M>表示分 ...
- 05.LoT.UI 前后台通用框架分解系列之——漂亮的时间选择器
LOT.UI分解系列汇总:http://www.cnblogs.com/dunitian/p/4822808.html#lotui LoT.UI开源地址如下:https://github.com/du ...
- bootstrap-datetimepicker 进一步跟进~~~开始时间和结束时间的样式显示
上次简单介绍了一下:05.LoT.UI 前后台通用框架分解系列之——漂亮的时间选择器(http://www.cnblogs.com/dunitian/p/5524019.html) 这次深入再介绍一下 ...
- MySQL设置字段的默认值为当前系统时间
问题产生: 当我们在对某个字段进行设置时间默认值,该默认值必须是的当前记录的插入时间,那么就将当前系统时间作为该记录创建的时间. 应用场景: 1.在数据表中,要记录每条数据是什么时候创建的,应该由数据 ...
- PHP之时间和日期函数
// 时间日期函数 Time <?php date_default_timezone_set('UTC'); // 获取当前时间的时间戳 $time0 = mktime(); $time1 = ...
- android 两种实现计时器时分秒的实现,把时间放在你的手中~
可能我们在开发中会时常用到计时器这玩意儿,比如在录像的时候,我们可能需要在右上角显示一个计时器.这个东西其实实现起来非常简单. 只需要用一个控件Chronometer,是的,就这么简单,我都不好意思讲 ...
- 微信小程序中利用时间选择器和js无计算实现定时器(将字符串或秒数转换成倒计时)
转载注明出处 改成了一个单独的js文件,并修改代码增加了通用性,点击这里查看 今天写小程序,有一个需求就是用户选择时间,然后我这边就要开始倒计时. 因为小程序的限制,所以直接选用时间选择器作为选择定时 ...
随机推荐
- [AH2017/HNOI2017] 单旋 - Splay
Splay 暴力维护节点信息即可 #include<iostream> #include<cstdio> #include<cstring> #include< ...
- IntelliJ WebStorm 2020最新 永久破解激活教程【全网最强,可用至2100年】
说明:都到了2020年,当然要用最新的IDE,目前最新是2019.3.1版本 ①IntelliJ WebStorm 2019.3.1安装永久破解[最强] 一. 在官网下载WebStorm安装包 链接 ...
- Java基本语法--程序流程控制
流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定功能的小逻辑模块.流程控制方式采用结构化程序设计中规定的三种基本流程结构,即:顺序结构.分支结构.循环结构.本篇博客主要是对 ...
- android 获取所有SD卡目录
//返回sd卡路径public static List<String> getStorageDirectories(Context context) { StorageManager sm ...
- lnmp1.5一键安装包安装lnmpa后,添加站点
lnmp1.5一键安装包安装lnmpa后,添加站点 (1)添加站点 (2)配置apache配置文件 在/usr/local/apache/conf/vhost文件夹下,修改webApp站点配置文件ap ...
- SpringMVC处理中文乱码
SpringMVC自带过滤器 添加至web.xml文件 <filter> <filter-name>encoding</filter-name> <filte ...
- git merge代码
把主干合并进分支 git checkout branch git merge origin/master [一开始我使用的是git merge master,提交代码后发现主干和分支还是有差异,如果不 ...
- Princeton Landmarks in Mathematics and Physics
郎兰茲主页下载:http://10.12.0.10/sunsite.ubc.ca/DigitalMathArchive/Langlands/pdf/?mqcreq=1 http://10.12.0.1 ...
- 一点点学习PS--实战四
本节实战,较为基础,主要是设置画布大小.字体的输入 1.工具使用 文字工具:直排文字工具,竖排文字 2.重点: (1)画影子: ----人物图层拷贝,CTRL+T,右键选择垂直翻转,拖拽出来,即可得到 ...
- Codeforces 524C.The Art of Dealing with ATM(暴力)
我先采用了智障解法(n * n枚举...刚开始把n看成1000了还以为能过) 理所当然的t了,不过我怀疑优化一下能过?(感觉数据不太行的亚子 然后就是O(n * k * k)的解法,看到好多人快乐二分 ...