栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何从第二天开始指定时间

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何从第二天开始指定时间

包装时间

import "time"

月,日,小时,分钟,秒和nsec值可能超出其通常范围,并将在转换过程中进行归一化。例如,10月32日转换为11月1日。


这样更有效。它最大程度地减少了对包

time
函数和方法的调用。

package mainimport (    "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 EDT2019-06-22 15:00:00 -0400 EDT

一些基准:

BenchmarkNow-8       31197811 36.6 ns/opBenchmarkTomorrowPeterSO-8      29852671 38.4 ns/opBenchmarkTomorrowJens-8          9523422124 ns/op

bench_test.go

package mainimport (    "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    }}


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/417762.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号