GoLang 判断日期是否为空 - 完整示例和代码
在 Go 语言中,我们可以使用 time 包来判断日期是否为空。具体的方法如下:
- 首先,我们需要将日期字符串转换为 time.Time 类型。可以使用 time.Parse 函数将日期字符串解析为 time.Time 类型。
layout := "2006-01-02" //日期格式
dateStr := "2022-01-01" //待判断的日期字符串
date, err := time.Parse(layout, dateStr)
if err != nil {
fmt.Println("日期格式错误")
return
}
- 判断日期是否为空。如果日期为空,即 time.Time 类型的零值,可以使用 IsZero 方法进行判断。
if date.IsZero() {
fmt.Println("日期为空")
} else {
fmt.Println("日期不为空")
}
完整的示例代码如下:
package main
import (
"fmt"
"time"
)
func main() {
layout := "2006-01-02" //日期格式
dateStr := "2022-01-01" //待判断的日期字符串
date, err := time.Parse(layout, dateStr)
if err != nil {
fmt.Println("日期格式错误")
return
}
if date.IsZero() {
fmt.Println("日期为空")
} else {
fmt.Println("日期不为空")
}
}
以上代码会输出"日期不为空",因为 dateStr 对应的日期不为空。
如果 dateStr 为空,即空字符串或者 nil,我们可以在转换为 time.Time 类型之前进行判断。
dateStr := "" //待判断的日期字符串
if dateStr == "" {
fmt.Println("日期为空")
return
}
date, err := time.Parse(layout, dateStr)
if err != nil {
fmt.Println("日期格式错误")
return
}
if date.IsZero() {
fmt.Println("日期为空")
} else {
fmt.Println("日期不为空")
}
以上代码会输出"日期为空",因为 dateStr 为空。
原文地址: https://www.cveoy.top/t/topic/qaHz 著作权归作者所有。请勿转载和采集!