Метод time.Duration.Abs
Метод time.Duration.Abs возвращает абсолютное значение
временного интервала time.Duration. Если интервал положительный,
метод возвращает его без изменений. Если интервал отрицательный,
метод возвращает его положительный эквивалент. Метод всегда
возвращает неотрицательное значение.
Синтаксис
god.Abs()
Пример
Давайте получим абсолютное значение положительного временного интервала:
gopackage main
import (
"fmt"
"time"
)
func main() {
d := 10 * time.Minute
res := d.Abs()
fmt.Println(res)
}
Результат выполнения кода:
go"10m0s"
Пример
Давайте получим абсолютное значение отрицательного временного интервала:
gopackage main
import (
"fmt"
"time"
)
func main() {
d := -5 * time.Second
res := d.Abs()
fmt.Println(res)
}
Результат выполнения кода:
go"5s"
Пример
Давайте применим метод Abs к нулевому
временному интервалу:
gopackage main
import (
"fmt"
"time"
)
func main() {
var d time.Duration
res := d.Abs()
fmt.Println(res)
}
Результат выполнения кода:
go"0s"
Пример
Давайте используем метод Abs для вычисления
разницы между двумя моментами времени:
gopackage 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)
}
Результат выполнения кода:
go"156h0m0s"
Смотрите также
-
метод
time.Duration.Hours,
который преобразует интервал в часы -
метод
time.Duration.Minutes,
который преобразует интервал в минуты -
метод
time.Duration.Seconds,
который преобразует интервал в секунды -
метод
time.Duration.String,
который возвращает строковое представление интервала