iT邦幫忙

DAY 21
0

初學 Golang 30 天系列 第 21

初學 Golang 30 天(二十一)時間

  • 分享至 

  • xImage
  •  

大部分的內建功能都介紹完,再來會稍微講一些有用的函式庫唷~
時間!是一般開發者常常會用到的功能,Go 已經內建得很齊全了,我們一起來看看吧!
###時間

package main  
 
import "fmt"  
import "time"  
 
func main() {  
p := fmt.Println  
 
now := time.Now()  
p(now)  
 
then := time.Date(  
2009, 11, 17, 20, 34, 58, 651387237, time.UTC)  
p(then)  
 
p(then.Year())  
p(then.Month())  
p(then.Day())  
p(then.Hour())  
p(then.Minute())  
p(then.Second())  
p(then.Nanosecond())  
p(then.Location())  
 
p(then.Weekday())  
 
p(then.Before(now))  
p(then.After(now))  
p(then.Equal(now))  
 
diff := now.Sub(then)  
p(diff)  
 
p(diff.Hours())  
p(diff.Minutes())  
p(diff.Seconds())  
p(diff.Nanoseconds())  
 
p(then.Add(diff))  
p(then.Add(-diff))  
}  
 

首先我們先看到這個有趣的寫法 **p := fmt.Println** ,這樣寫以後要印出東西的時候只要打 p() 就可以了,而 **p(now)** 其實就是等於 **fmt.Println(now)**,Go 允許這麼操作,是不是很方便阿。

time.Now()  

可以獲得目前的時間,而如果要自訂時間呢?

then := time.Date(2009, 11, 17, 20, 34, 58, 651387237, time.UTC)  

這樣就可以指定囉!當然要按照順序就是了。
根據官方文件說明,你必須要這樣子遵照格式使用!

Date(year int, month Month, day, hour, min, sec, nsec int, loc \*Location)  
 

再來如果要計算時間差呢?只要利用 Sub 方法就可以計算囉
http://golang.org/pkg/time/


上一篇
初學 Golang 30 天(二十)檔案
下一篇
初學 Golang 30 天(二十二)字串
系列文
初學 Golang 30 天30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言