go 判断结构体是否为空

1package main 2 3import ( 4 "fmt" 5 "reflect" 6) 7 8 9type A struct{ 10 name string 11 age int 12} 13 14 15func (a A) IsEmpty() bool { 16 return reflect.DeepEqual(a, A{}) 17} 18 19 20func main() { 21 var a A 22 if a == (A{}) { // 括号不能去 23 fmt.Println("a == A{} empty") 24 } 25 26 if a.IsEmpty() { 27 fmt.Println("reflect deep is empty") 28 } 29}
点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

Golang中常用的字符串操作

Golang中常用的字符串操作一、标准库相关的Packagegoimport("strings")二、常用字符串操作1.判断是否为空字符串1.1使用“”进行判断思路:直接判断是否等于""空字符串,由于Golang中字符串不能为nil,且为值类型,所以直接与空字符串比较即可。举例:go

Golang简单写文件操作的四种方法

packagemainimport("bufio"//缓存IO"fmt""io""io/ioutil"//io工具包"os")funccheck(eerror){ifenil{panic(e)}}/判断文件是否存在存在返回true不存在返回false/func

Go生成json、解析json和多维json数组解析

go生成和解析json结构是按结构体模式解析的,所以结构体类型一定要多练习熟悉。完整代码(可以运行)://buildignorepackagemainimport("encoding/json""fmt")typePersonstruct