golang中的nil
golang中的nil与其他语言中的语义是一样的,就是代表引用类型的默认值,但是不一样的是,
golang中有多种引用类型:pointer、interface、slice、map,channel, function;因此,每种引用类型的默认值,是不一样的,就和基础类型中,bool的默认值是false, int的默认值是0一样作为一个强类型语言,不同引用类型的判空(nil)规则是不同的;
interface的判空规则是,需要判断类型和值是否都为nil(interface的底层是有类型和值构成的) slice的判空,需要判断slice引用底层数组的指针为空,容量和size均为0 因此,判断nil的行为时,需要结合nil指向的具体类型,然后做判断
到此这篇关于“golang中的nil”的文章就介绍到这了,更多文章或继续浏览下面的相关文章,希望大家以后多多支持JQ教程网!您可能感兴趣的文章:
Golang interface(接口)的nil判断
golang中的nil
golang 面试题(十三)interface内部结构和nil详解
go语言zip压缩文件
Go接口之nil != nil
golang积累-接口指针与结构体指针
【golang】nil的理解
Golang算法:二叉树前序,中序,后序非递归遍历算法
golang中的空slice
golang key map 所有_Golang:map的比较-Go语言中文社区