"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Vá em Tempo e Duração | Tutoriais de programação

Vá em Tempo e Duração | Tutoriais de programação

Publicado em 2024-11-02
Navegar:572

Introdução

Go Time and Duration | Programming Tutorials

Este laboratório tem como objetivo testar sua compreensão do suporte de tempo e duração do Go.

Tempo

O código abaixo contém exemplos de como trabalhar com tempo e duração em Go. No entanto, algumas partes do código estão faltando. Sua tarefa é completar o código para que funcione conforme o esperado.

  • Conhecimento básico da linguagem de programação Go.
  • Familiaridade com o suporte de tempo e duração do Go.
$ go run time.go
2012-10-31 15:50:13.793654  0000 UTC
2009-11-17 20:34:58.651387237  0000 UTC
2009
November
17
20
34
58
651387237
UTC
Tuesday
true
false
false
25891h15m15.142266763s
25891.25420618521
1.5534752523711128e 06
9.320851514226677e 07
93208515142266763
2012-10-31 15:50:13.793654  0000 UTC
2006-12-05 01:19:43.509120474  0000 UTC

# Next we'll look at the related idea of time relative to
# the Unix epoch.

O código completo está abaixo:

// Go offers extensive support for times and durations;
// here are some examples.

package main

import (
    "fmt"
    "time"
)

func main() {
    p := fmt.Println

    // We'll start by getting the current time.
    now := time.Now()
    p(now)

    // You can build a `time` struct by providing the
    // year, month, day, etc. Times are always associated
    // with a `Location`, i.e. time zone.
    then := time.Date(
        2009, 11, 17, 20, 34, 58, 651387237, time.UTC)
    p(then)

    // You can extract the various components of the time
    // value as expected.
    p(then.Year())
    p(then.Month())
    p(then.Day())
    p(then.Hour())
    p(then.Minute())
    p(then.Second())
    p(then.Nanosecond())
    p(then.Location())

    // The Monday-Sunday `Weekday` is also available.
    p(then.Weekday())

    // These methods compare two times, testing if the
    // first occurs before, after, or at the same time
    // as the second, respectively.
    p(then.Before(now))
    p(then.After(now))
    p(then.Equal(now))

    // The `Sub` methods returns a `Duration` representing
    // the interval between two times.
    diff := now.Sub(then)
    p(diff)

    // We can compute the length of the duration in
    // various units.
    p(diff.Hours())
    p(diff.Minutes())
    p(diff.Seconds())
    p(diff.Nanoseconds())

    // You can use `Add` to advance a time by a given
    // duration, or with a `-` to move backwards by a
    // duration.
    p(then.Add(diff))
    p(then.Add(-diff))
}

Resumo

Este laboratório testou sua capacidade de trabalhar com o suporte de tempo e duração do Go. Você aprendeu como extrair vários componentes de um valor de tempo, comparar dois tempos, calcular a duração de uma duração e avançar um tempo por uma determinada duração.


? Pratique agora: explore o tempo e a duração


Quer saber mais?

  • ? Aprenda as últimas árvores de habilidades Go
  • ? Leia mais tutoriais do Go
  • ? Junte-se ao nosso Discord ou envie um tweet para nós @WeAreLabEx
Declaração de lançamento Este artigo foi reproduzido em: https://dev.to/labex/go-time-and-duration-programming-tutorials-786?1 Se houver alguma violação, entre em contato com [email protected] para excluí-lo
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3