Метод time.Duration.Abs
Метод time.Duration.Abs возвращает абсолютное значение
временного интервала time.Duration. Если интервал положительный,
метод возвращает его без изменений. Если интервал отрицательный,
метод возвращает его положительный эквивалент. Метод всегда
возвращает неотрицательное значение.
Синтаксис
d.Abs()
Пример
Давайте получим абсолютное значение положительного временного интервала:
package main
import (
"fmt"
"time"
)
func main() {
d := 10 * time.Minute
res := d.Abs()
fmt.Println(res)
}
Результат выполнения кода:
"10m0s"
Пример
Давайте получим абсолютное значение отрицательного временного интервала:
package main
import (
"fmt"
"time"
)
func main() {
d := -5 * time.Second
res := d.Abs()
fmt.Println(res)
}
Результат выполнения кода:
"5s"
Пример
Давайте применим метод Abs к нулевому
временному интервалу:
package main
import (
"fmt"
"time"
)
func main() {
var d time.Duration
res := d.Abs()
fmt.Println(res)
}
Результат выполнения кода:
"0s"
Пример
Давайте используем метод Abs для вычисления
разницы между двумя моментами времени:
package main
import (
"fmt"
"time"
)
func main() {
t1 := time.Date(2024, 1, 1, 0, 0, 0, 0, time.UTC)
t2 := time.Date(2023, 12, 25, 12, 0, 0, 0, time.UTC)
diff := t1.Sub(t2).Abs()
fmt.Println(diff)
}
Результат выполнения кода:
"156h0m0s"
Смотрите также
-
метод
time.Duration.Hours,
который преобразует интервал в часы -
метод
time.Duration.Minutes,
который преобразует интервал в минуты -
метод
time.Duration.Seconds,
который преобразует интервал в секунды -
метод
time.Duration.String,
который возвращает строковое представление интервала