今天遇到一个面试题,当时我就有点懵
package main
import "log"
func main() {
a := []byte{'.'}
log.Println(a)
str := "."
log.Println([]byte(str))
//这里确认都是 slice,没有 array
}
问:这两个输出结果是不是一致的,为什么?
我当时心里有点懵逼,认真想了很久,完全没 get 到,什么 array slice 一顿回忆,确定 println 一个 slice 和底层的 array 应该没关系,但是后边这个为什么,怎么感觉就是想让我回答不一致呢?
最后我写了:不知道,我认为一致
我回来之后试了一下,两次的确输出的都是[46]。现在我怀疑我哪里看错了吗?这题目究竟是啥意思,给我都整不自信了都
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.