Trabalhar com valores de tempo na programação geralmente requer a manipulação de datas e a determinação de certos aspectos dos prazos. Uma tarefa comum é encontrar o último dia de um determinado mês. Isso pode ser particularmente desafiador ao lidar com meses que têm diferentes números de dias, como fevereiro.
No pacote de tempo do Go, o tipo time.Time representa um ponto no tempo. Para obter o último dia de um mês para um determinado valor de hora.Tempo, podemos usar a função Data.
A função Data usa vários parâmetros, incluindo:
Para encontrar o último dia de um mês, podemos definir o parâmetro dia como 0 e aumentar o parâmetro mês em um. Isso retornará um valor time.Time representando o primeiro dia do próximo mês. Podemos então subtrair um dia deste valor para obter o último dia do mês atual.
Por exemplo, para encontrar o último dia de janeiro de 2016, podemos usar o seguinte código:
package main
import (
"fmt"
"time"
)
func main() {
// January, 29th
t, _ := time.Parse("2006-01-02", "2016-01-29")
// Increment month and set day to 0 to get first day of next month
y, m, _ := t.Date()
lastDay := time.Date(y, m 1, 0, 0, 0, 0, 0, time.UTC)
// Subtract one day to get last day of current month
lastDay = lastDay.Add(-24 * time.Hour)
fmt.Println(lastDay)
}
A saída deste programa é:
2016-01-31 00:00:00 0000 UTC
Isso nos dá corretamente o último dia do mês, que é 31 de janeiro de 2016.
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