为什么golang用括号表示字节片,用括号表示字符串片?
我一直想知道为什么在golang中使用括号创建字节片:为什么golang用括号表示字节片,用括号表示字符串片?,go,byte,slice,Go,Byte,Slice,我一直想知道为什么在golang中使用括号创建字节片: []字节(“foo”) 使用括号表示法创建字符串片段时: []字符串{“foo”,“bar”} 使用括号是否仅仅是因为表达式需要单个值(例如字符串“foo”),因此括号用作“分组”语法 注意:用“组”或“分组”来定义这种行为对我来说很可能是不正确的,但我没有更好的词来表达我的想法 我这样认为是因为golang在分组意义上也使用括号来表示类型断言I.(T)和指针解引用(*p).z这是错误的 []字节(“任意字符串”)实际上是从字符串类型
[]字节(“foo”)
使用括号表示法创建字符串片段时:
[]字符串{“foo”,“bar”}
使用括号是否仅仅是因为表达式需要单个值(例如字符串“foo”
),因此括号用作“分组”语法
注意:用“组”或“分组”来定义这种行为对我来说很可能是不正确的,但我没有更好的词来表达我的想法
我这样认为是因为golang在分组意义上也使用括号来表示类型断言
I.(T)
和指针解引用(*p).z
这是错误的
实际上是从[]字节(“任意字符串”)
类型到字符串
(字节的切片类型)的类型转换,其返回类型是[]字节
[]字节
实际上是[]字符串{“string0”、“string1”、…}
字符串的
片段
T(v)
,也就是说,要将字符串转换为字节片,需要执行[]字节(“foo”)
。花括号是。您也可以使用复合文字[]字节{f','o','o'}
来构造字节片。是的,请注意,在创建字节片[]字节
时,后面并没有列出字节值,而是列出单个字符串
值。文字应该是这样的:[]字节{1,2,3}
或[]字节{f',o',o'}
。哦!我懂了。现在有道理了。非常感谢。