主题
文章
项目
资源
图书
Go网址导航
下载
官方文档
英文文档
中文文档
标准库中文版
Go指南
注册
登录
首页
主题
Go问与答
以下两个表达式为什么goland建议我将s1的形式换成s2的形式
holen1210
·
· 897 次点击
s1 := []byte{} var s2 []byte s1是empty,s2是nil 我写出s1的表达式,goland建议我改成s2,这是为啥?
阅读全文
查看全部 3 个评论
bighippo
nil就对了,append之类的操作是支持nil的,赋值一个空的切片,除非明确需要(比如序列化输出需要个空而不是null的时候),不然后面append的时候又要扩容,分配内存啥的。ide觉得反正也要脱裤子,还不如不穿。。。
评论于 2019-03-04 00:37:10
#3
更多评论
kevenp
因为s1已经初始化了,s2只是声明。s1这种写法没必要,想要零值,直接声明就可以了。
评论于 2019-02-22 18:34:54
#1
holen1210
s2这是nil啊
评论于 2019-02-22 18:52:14
#2
我要评论
用户登录
记住登录状态
没有账号?
注册
忘记密码?
或
GitHub 登录
Gitea 登录
Go今日面试题
今日阅读排行
一周阅读排行
X
登录和大家一起探讨吧
用户名
密码
记住登录状态
登录
GitHub 登录
忘记密码?
还不是会员
现在注册