當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


GO Time.Round用法及代碼示例

GO語言"time"包中"Time.Round"類型的用法及代碼示例。

用法:

func(t Time) Round(d Duration) Time

Round 返回將 t 舍入到最接近 d 的倍數的結果(從零開始)。中間值的舍入行為是向上舍入。如果 d <= 0,Round 返回 t 去除任何單調時鍾讀數,否則保持不變。

Round 在時間上作為從零時間開始的絕對持續時間運行;它不適用於當時的演示文稿形式。因此, Round(Hour) 可能會返回一個非零分鍾的時間,具體取決於時間的位置。

例子:

package main

import (
    "fmt"
    "time"
)

func main() {
    t := time.Date(0, 0, 0, 12, 15, 30, 918273645, time.UTC)
    round := []time.Duration{
        time.Nanosecond,
        time.Microsecond,
        time.Millisecond,
        time.Second,
        2 * time.Second,
        time.Minute,
        10 * time.Minute,
        time.Hour,
    }

    for _, d := range round {
        fmt.Printf("t.Round(%6s) = %s\n", d, t.Round(d).Format("15:04:05.999999999"))
    }
}

輸出:

t.Round(   1ns) = 12:15:30.918273645
t.Round(   1µs) = 12:15:30.918274
t.Round(   1ms) = 12:15:30.918
t.Round(    1s) = 12:15:31
t.Round(    2s) = 12:15:30
t.Round(  1m0s) = 12:16:00
t.Round( 10m0s) = 12:20:00
t.Round(1h0m0s) = 12:00:00

相關用法


注:本文由純淨天空篩選整理自golang.google.cn大神的英文原創作品 Time.Round。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。