package mainimport "fmt"import "time"func main() {    p := fmt.Println    // We'll start by getting the current time.    now := time.Now()    p("time.Now(): ", now)    // You can build a "time" struct by providing the    // year, month, day, etc. Times are always associated    // with a "Location", i.e. time zone.    then := time.Date(2009, 11, 17, 20, 34, 58, 651387237, time.UTC)    p("time.Date(): ", then)    p("==================================")    // You can extract the various components of the time    // value as expected.    p("time.Date().Year(): ", then.Year())    p("time.Date().Month(): ", then.Month())    p("time.Date().Day(): ", then.Day())    p("time.Date().Hour(): ", then.Hour())    p("time.Date().Minute(): ", then.Minute())    p("time.Date().Second(): ", then.Second())    p("time.Date().Nanosecond(): ", then.Nanosecond())    p("time.Date().Location(): ", then.Location())    // The Monday-Sunday "Weekday" is also available.    p("time.Date().Weekday(): ", then.Weekday())    p("==================================")    // These methods compare two times, testing if the    // first occurs before, after, or at the same time    // as the second, respectively.    p("time.Date().Before(now): ", then.Before(now))    p("time.Date().After(now): ", then.After(now))    p("time.Date().Equal(now): ", then.Equal(now))    p("==================================")    // The "Sub" methods returns a "Duration" representing    // the interval between two times.    diff := now.Sub(then)    p("time.Now().Sub(time.Date()): ", diff)    p("==================================")    // We can compute the length of the duration in    // various units.    p("time.Date().Sub(then).Hours(): ", diff.Hours())    p("time.Date().Sub(then).Minutes(): ", diff.Minutes())    p("time.Date().Sub(then).Seconds(): ", diff.Seconds())    p("time.Date().Sub(then).Nanoseconds(): ", diff.Nanoseconds())    p("==================================")    // You can use "Add" to advance a time by a given    // duration, or with a "-" to move backwards by a    // duration.    p("time.Date().Sub(now).Add(now.Sub(then)): ", now.Add(diff))    p("time.Date().Sub(then).Add(-(now.Sub(then))): ", then.Add(-diff))}

golang time and duration的更多相关文章

  1. golang time.Duration()的问题解疑

    原文:  How to multiply duration by integer? 看到golang项目中的一段代码, ---------------------------------------- ...

  2. Golang, 以17个简短代码片段,切底弄懂 channel 基础

    (原创出处为本博客:http://www.cnblogs.com/linguanh/) 前序: 因为打算自己搞个基于Golang的IM服务器,所以复习了下之前一直没怎么使用的协程.管道等高并发编程知识 ...

  3. channel Golang

    Golang, 以17个简短代码片段,切底弄懂 channel 基础 (原创出处为本博客:http://www.cnblogs.com/linguanh/) 前序: 因为打算自己搞个基于Golang的 ...

  4. golang 裸写一个pool池控制协程的大小

    这几天深入的研究了一下golang 的协程,读了一个好文 http://mp.weixin.qq.com/s?__biz=MjM5OTcxMzE0MQ==&mid=2653369770& ...

  5. TODO:Golang UDP连接简单测试慎用Deadline

    TODO:Golang UDP连接简单测试慎用Deadline UDP 是User Datagram Protocol的简称, 中文名是用户数据报协议,是OSI(Open System Interco ...

  6. Ubuntu14.04+RabbitMQ3.6.3+Golang的最佳实践

    目录 [TOC] 1.RabbitMQ介绍 1.1.什么是RabbitMQ?   RabbitMQ 是由 LShift 提供的一个 Advanced Message Queuing Protocol ...

  7. golang开发缓存组件

    代码地址github:cache 花了一天时间看了下实验楼的cache组件,使用golang编写的,收获还是蛮多的,缓存组件的设计其实挺简单的,主要思路或者设计点如下: 全局struct对象:用来做缓 ...

  8. golang中的race检测

    golang中的race检测 由于golang中的go是非常方便的,加上函数又非常容易隐藏go. 所以很多时候,当我们写出一个程序的时候,我们并不知道这个程序在并发情况下会不会出现什么问题. 所以在本 ...

  9. [Golang] 一个简易代理池

    晚上写了一个代理池,就是在一个代理网站上爬取代理ip和端口以及测试是否可用.接下来可能考虑扩展成一个比较大的 golang实现的代理池. 简易版代码: package main import ( &q ...

随机推荐

  1. NET程序内存分析工具CLRProfiler的使用(性能测试)

    http://blog.csdn.net/wy3552128/article/details/8158938 大家都知道.net有一套自己的内存(垃圾)回收机制,除非有一些数据(方法)长期占有内存不随 ...

  2. poj 1028

    http://poj.org/problem?id=1028 题意(水):做一个游览器的历史记录. back:后退到上一个页面,当上一个页面没有时,输出ignored. forward:向前一个页面, ...

  3. Spring AOP基于配置文件的面向方法的切面

    Spring AOP基于配置文件的面向方法的切面 Spring AOP根据执行的时间点可以分为around.before和after几种方式. around为方法前后均执行 before为方法前执行 ...

  4. Starting MySQL.The server quit without updating PID file (xxxx.pid).[FAILED]

    mysql无法正常启动,查看日志报如下异常 --07T01::.929615Z [ERROR] Fatal error: Please read "Security" sectio ...

  5. SAP ALV显示并打印(非OO方式)

    *&---------------------------------------------------------------------* *& Report  Z_SD_CPF ...

  6. asp.net中获取当前url的方法

    HttpContext.Current.Request.Url.ToString() 并不可靠. 如果当前URL为 http://localhost/search.aspx?user=http://c ...

  7. iScroll.js 用法参考 (share)

    分享是传播.学习知识最好的方法 以下这篇文章是iScroll.js官网的中文翻译,尽管自己英文不好,但觉得原作者们翻译的这个资料还是可以的,基本用法介绍清楚了.如果你英文比较好的话,可以看看官网的资料 ...

  8. bootstrap添加时间控件

    $('#startTime').daterangepicker({ singleDatePicker: true,format:"YYYY-MM-DD HH:mm:ss",time ...

  9. 解决eclipseMavne的web项目debug时没有源码

  10. 字符匹配算法之Boyer-Moore算法

    Boyer-Moore算法的精华是从后向前,取好后缀与坏后缀中的最大移动位移动搜索词,以达到最快速检索的效果. 详情参考:http://www.ruanyifeng.com/blog/2013/05/ ...