最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Go語(yǔ)言中DateTime的用法介紹

 更新時(shí)間:2022年07月18日 08:50:06   作者:奮斗的大橙子  
這篇文章介紹了Go語(yǔ)言中DateTime的用法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

一、基本使用

①?gòu)膶儆趖ime這個(gè)包

②一般使用都是使用

time.Time 這個(gè)類型表示時(shí)間 ,time包中還有一些常量,源碼如下

// Common durations. There is no definition for units of Day or larger
// to avoid confusion across daylight savings time zone transitions.
//
// To count the number of units in a Duration, divide:
//  second := time.Second
//  fmt.Print(int64(second/time.Millisecond)) // prints 1000
//
// To convert an integer number of units to a Duration, multiply:
//  seconds := 10
//  fmt.Print(time.Duration(seconds)*time.Second) // prints 10s
//<br data-filtered="filtered">
const (
    Nanosecond  Duration = 1
    Microsecond          = 1000 * Nanosecond
    Millisecond          = 1000 * Microsecond
    Second               = 1000 * Millisecond
    Minute               = 60 * Second
    Hour                 = 60 * Minute
)

③ time.Now() 獲取當(dāng)前的時(shí)間,返回的是Time類型

Time類型中的

  • Year() 獲取當(dāng)前的年份
  • Month() 獲取當(dāng)前的月份
  • Day() 獲取當(dāng)前的日期
  • Hour() 獲取當(dāng)前小時(shí)
  • Minute() 獲取當(dāng)前分鐘
  • Second() 獲取當(dāng)前秒

④常用 Unix() 方法獲取時(shí)間戳信息

⑤通過(guò)AddDate()方法增加指定日期,Add方法增加指定時(shí)間

舉個(gè)例子:

  • ①打印時(shí)間基礎(chǔ)信息
func DateTimeBasic() time.Time{
    now:=time.Now()
 
    fmt.Printf("%v\n",now)
 
    year:=now.Year()
    month:=now.Month()
    day:=now.Day()
    hour:=now.Hour()
    minute:=now.Minute()
    send:=now.Second()
 
    fmt.Printf("%02d/%02d/%02d %02d:%02d:%02d\n",year,month,day,hour,minute,send)
 
    return now
}
  • ② 時(shí)間和時(shí)間戳直接的轉(zhuǎn)換 第一個(gè)函數(shù)輸入時(shí)間返回時(shí)間戳,第二個(gè)函數(shù)輸入時(shí)間戳返回時(shí)間
func GetDateTimeStamp(datetime time.Time) int64{
    now:=datetime.Unix()
    fmt.Printf("TimeStamp: %v\n",now)
    return now
}
 
func GetDateTime(timeStamp int64){
    now:=time.Unix(timeStamp,0)
    fmt.Printf("DateTime: %v\n",now)
}
  • ③增加時(shí)間
func AddDay(src time.Time) time.Time{
    //添加一天兩小時(shí)
    src = src.AddDate(0,0,1).Add(time.Hour * 2)
    return src
}
  • ④測(cè)試一下
package main
 
import "DateTimeDemo"
 
func main(){
     
    dateTime:=DateTimeDemo.DateTimeBasic()
    calcDateTime := DateTimeDemo.AddDay(dateTime)
    timeStamp:=DateTimeDemo.GetDateTimeStamp(calcDateTime)
    DateTimeDemo.GetDateTime(timeStamp)
     
}
  • ⑤輸出

2019-02-26 16:51:59.7509972 +0800 CST m=+0.010553801
2019/02/26 16:51:59
TimeStamp: 1551264719
DateTime: 2019-02-27 18:51:59 +0800 CST

二、簡(jiǎn)單定時(shí)器

利用time中Tick()方法

func SimpleTicker(){
   //間隔兩秒,會(huì)像Channel中寫入一個(gè)數(shù)據(jù)
   ticker := time.Tick(time.Second * 2)
 
   for i := range ticker{
      fmt.Printf("%v\n",i)
      simpleTask()
   }
}
 
func simpleTask(){
   fmt.Println("Task Start")
}

執(zhí)行結(jié)果:

2019-02-26 16:54:43.7828451 +0800 CST m=+2.077803401
Task Start
2019-02-26 16:54:45.7831559 +0800 CST m=+4.078114201
Task Start
2019-02-26 16:54:47.7831744 +0800 CST m=+6.078132701
Task Start
2019-02-26 16:54:49.7833155 +0800 CST m=+8.078273801
Task Start
2019-02-26 16:54:51.782682 +0800 CST m=+10.077640301
Task Start

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

相關(guān)文章

  • Go語(yǔ)言對(duì)JSON數(shù)據(jù)進(jìn)行序列化和反序列化

    Go語(yǔ)言對(duì)JSON數(shù)據(jù)進(jìn)行序列化和反序列化

    這篇文章介紹了Go語(yǔ)言對(duì)JSON數(shù)據(jù)進(jìn)行序列化和反序列化的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-07-07
  • 解決GO編譯時(shí)避免引入外部動(dòng)態(tài)庫(kù)的問(wèn)題

    解決GO編譯時(shí)避免引入外部動(dòng)態(tài)庫(kù)的問(wèn)題

    最近碰到一個(gè)問(wèn)題,有一個(gè)流量采集的組件中使用到了github.com/google/gopacket 這個(gè)庫(kù),這個(gè)庫(kù)使用一切正常,但是唯獨(dú)有一個(gè)缺點(diǎn),編譯后的二進(jìn)制文件依賴于libpcap.so的動(dòng)態(tài)庫(kù),這篇文章主要介紹了GO編譯時(shí)避免引入外部動(dòng)態(tài)庫(kù)的解決方法,需要的朋友可以參考下
    2022-10-10
  • 在Gin框架中解決跨域問(wèn)題的多種方法

    在Gin框架中解決跨域問(wèn)題的多種方法

    在使用Go語(yǔ)言進(jìn)行Web開(kāi)發(fā)時(shí),Gin框架因其簡(jiǎn)潔、高效的特點(diǎn)而被廣泛使用,然而,在實(shí)際開(kāi)發(fā)中,跨域問(wèn)題(CORS, Cross-Origin Resource Sharing)是一個(gè)常見(jiàn)的挑戰(zhàn),本文將結(jié)合實(shí)際案例,詳細(xì)介紹在Gin框架中解決跨域問(wèn)題的多種方法,需要的朋友可以參考下
    2024-10-10
  • Go語(yǔ)言通過(guò)WaitGroup實(shí)現(xiàn)控制并發(fā)的示例詳解

    Go語(yǔ)言通過(guò)WaitGroup實(shí)現(xiàn)控制并發(fā)的示例詳解

    Channel能夠很好的幫助我們控制并發(fā),但是在開(kāi)發(fā)習(xí)慣上與顯示的表達(dá)不太相同,所以在Go語(yǔ)言中可以利用sync包中的WaitGroup實(shí)現(xiàn)并發(fā)控制,本文就來(lái)和大家詳細(xì)聊聊WaitGroup如何實(shí)現(xiàn)控制并發(fā)
    2023-01-01
  • Go語(yǔ)言官方依賴注入工具Wire的使用教程

    Go語(yǔ)言官方依賴注入工具Wire的使用教程

    依賴注入是一種實(shí)現(xiàn)控制反轉(zhuǎn)且用于解決依賴性問(wèn)題的設(shè)計(jì)模式。Golang?中常用的依賴注入工具主要有?Inject?、Dig?等。但是今天主要介紹的是?Go?團(tuán)隊(duì)開(kāi)發(fā)的?Wire,一個(gè)編譯期實(shí)現(xiàn)依賴注入的工具,感興趣的可以了解一下
    2022-09-09
  • Go語(yǔ)言結(jié)合validator包實(shí)現(xiàn)表單驗(yàn)證

    Go語(yǔ)言結(jié)合validator包實(shí)現(xiàn)表單驗(yàn)證

    在現(xiàn)代?Web?開(kāi)發(fā)中,表單驗(yàn)證和錯(cuò)誤處理是至關(guān)重要的環(huán)節(jié),本文將演示如何使用?Go?語(yǔ)言的?Gin?框架結(jié)合?validator?包,實(shí)現(xiàn)高級(jí)的表單驗(yàn)證功能,需要的可以參考下
    2024-11-11
  • Kafka安裝部署+go整合過(guò)程

    Kafka安裝部署+go整合過(guò)程

    go語(yǔ)言是一種快速、分布式、并發(fā)編程的語(yǔ)言,它天生適合于處理高并發(fā)場(chǎng)景下的消息傳遞和處理,在本文中,我們將介紹Kafka安裝部署+go整合過(guò)程,感興趣的朋友一起看看吧
    2024-08-08
  • 一文帶你了解Go語(yǔ)言中的函數(shù)

    一文帶你了解Go語(yǔ)言中的函數(shù)

    函數(shù)是編程中不可或缺的組成部分,在本文中,我們將詳細(xì)介紹Go語(yǔ)言中函數(shù)的概念和使用方法,包括函數(shù)的定義、參數(shù)和返回值等,需要的可以參考一下
    2023-06-06
  • 代碼整潔利器go?fmt命令使用詳解

    代碼整潔利器go?fmt命令使用詳解

    這篇文章主要為大家介紹了代碼整潔利器go?fmt命令使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • 詳解Golang中interface{}的注意事項(xiàng)

    詳解Golang中interface{}的注意事項(xiàng)

    學(xué)習(xí)?golang?,對(duì)于?interface{}?接口類型,我們一定繞不過(guò),這篇文章咱們就來(lái)一起來(lái)看看?使用?interface{}?的時(shí)候,都有哪些注意事項(xiàng)吧
    2023-03-03

最新評(píng)論

桓台县| 慈溪市| 邛崃市| 新津县| 河东区| 河东区| 九寨沟县| 岳西县| 芜湖市| 西峡县| 上杭县| 武城县| 麻城市| 孙吴县| 岳西县| 崇明县| 珠海市| 集贤县| 招远市| 八宿县| 宁远县| 新巴尔虎左旗| 肥乡县| 泰来县| 依兰县| 梓潼县| 大邑县| 泌阳县| 蒙自县| 洛阳市| 榆林市| 霍林郭勒市| 谢通门县| 合江县| 夹江县| 佛坪县| 成都市| 紫金县| 五常市| 桐梓县| 汉川市|