arrays - 字符串如何存储在 GO 数组中?

标签 arrays string go

跟着GO的游玩,遇到了如下代码:

var a [2]string
a[0] = "Hello"
a[1] = "World"

因此,数组的长度是不可变的,并在声明数组时设置。但是您可以在其中存储任何大小的字符串。

为什么你能做到这一点?

最佳答案

字符串就像字节的只读片段。所以这段代码之所以有效,是因为数组只需要为指针和一些元数据(字符串的长度)分配空间。

请参阅此处(底部)的字符串部分:

https://blog.golang.org/slices

关于arrays - 字符串如何存储在 GO 数组中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43852529/

相关文章:

Go:使用乘数将 float64 转换为 int

javascript - 在 PHP 数组中调用 JavaScript 函数

python - 如何在循环内对数组进行列堆栈?

regex - 如何删除重复的字符但保留其中两个?

java - 如何查看字符串的第一个字符是否是某个字符,如果是,则执行操作(无法正常工作)

reflection - 反射(reflect) []byte 的值

arrays - "cannot infer type for ` _ `"在 Rust 中对 iter 使用 map 时

java - 使用对象数组获取 NullPointerException

c# - string.ElementAt() 是 O(1) 吗?

go - Golang 的 `all goroutines are asleep - deadlock!` 错误背后的算法是什么?