【发布时间】:2019-12-27 00:04:54
【问题描述】:
var s string
var slice []int
len(s)
len(slice)
len() 调用 strings 和切片,O(1)。
从thisgolang官博可以看到切片有长度、容量和指向底层数组的指针。所以我明白了,它上面的 len() 可能是一个 O(1) 操作。但是字符串呢?字符串的长度是否也在内部与数据相关联,因此 len() 只是查找并返回它?
我查看了源代码builtin.go,但无法从中得出任何结论。
【问题讨论】:
标签: go