第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何獲取第二天的具體時間

如何獲取第二天的具體時間

Go
桃花長相依 2023-06-26 17:02:03
time.Time我想為第二天(明天)的確切時間點創(chuàng)建一個?,F在我想設置小時和分鐘。這是我目前使用的代碼:now := time.Now() tomorrow := time.Date(now.Year(), now.Month(), now.Day(), 15, 0, 0, 0, time.UTC).AddDate(0,0,1)這將為今天創(chuàng)建一個Date具有我正在尋找的確切時間(小時和分鐘)的日期,然后添加一天Date。這很好用。例子:想象一下time.Now()是2009-11-10 23:00:00 +0000 UTC。以下代碼的結果將是:2009-11-10 15:00:00 +0000 UTCtomorrow := time.Date(now.Year(), now.Month(), now.Day(), 15, 0, 0, 0, time.UTC)到目前為止,我添加了一天使用AddDate(0, 0, 1). 結果就是第二天所需的時間:2009-11-11 15:00:00 +0000 UTC。請參閱: https: //play.golang.org/p/OKR9V1HN50x問題:有沒有更短的方法來編寫這段代碼?
查看完整描述

1 回答

?
楊__羊羊

TA貢獻1943條經驗 獲得超7個贊

打包時間

import?"time"

月、日、小時、分鐘、秒和納秒值可能超出其通常范圍,并將在轉換過程中標準化。例如,10 月 32 日轉換為 11 月 1 日。


這樣效率更高。它最大限度地減少了對包time函數和方法的調用。

package main


import (

? ? "fmt"

? ? "time"

)


func main() {

? ? now := time.Now()

? ? fmt.Println(now.Round(0))

? ? yyyy, mm, dd := now.Date()

? ? tomorrow := time.Date(yyyy, mm, dd+1, 15, 0, 0, 0, now.Location())

? ? fmt.Println(tomorrow)

}

輸出:


2019-06-21 16:23:06.525478162 -0400 EDT

2019-06-22 15:00:00 -0400 EDT

一些基準:


BenchmarkNow-8? ? ? ? ? ? ? ? ? 31197811? ? ? ? ? ? 36.6 ns/op

BenchmarkTomorrowPeterSO-8? ? ? 29852671? ? ? ? ? ? 38.4 ns/op

BenchmarkTomorrowJens-8? ? ? ? ? 9523422? ? ? ? ? ?124 ns/op

bench_test.go:


package main


import (

? ? "testing"

? ? "time"

)


func BenchmarkNow(b *testing.B) {

? ? for N := 0; N < b.N; N++ {

? ? ? ? now := time.Now()

? ? ? ? _ = now

? ? }

}


var now = time.Now()


func BenchmarkTomorrowPeterSO(b *testing.B) {

? ? for N := 0; N < b.N; N++ {

? ? ? ? // now := time.Now()

? ? ? ? yyyy, mm, dd := now.Date()

? ? ? ? tomorrow := time.Date(yyyy, mm, dd+1, 15, 0, 0, 0, now.Location())

? ? ? ? _ = tomorrow

? ? }

}


func BenchmarkTomorrowJens(b *testing.B) {

? ? for N := 0; N < b.N; N++ {

? ? ? ? // now := time.Now()

? ? ? ? tomorrow := time.Date(now.Year(), now.Month(), now.Day(), 15, 0, 0, 0, now.Location()).AddDate(0, 0, 1)

? ? ? ? _ = tomorrow

? ? }

}


查看完整回答
反對 回復 2023-06-26
  • 1 回答
  • 0 關注
  • 137 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號