在编写Go应用程序时,我经常会 Select 使用[]byte
或string
.除了[]byte
的明显易变性之外,我如何决定使用哪一个呢?
我有几个示例用例:
- 函数返回新的
[]byte
.既然切片容量是固定的,那么有什么理由不返回字符串呢? - 默认情况下,
[]byte
的打印效果不如string
,因此出于日志(log)记录的目的,我经常发现自己转换为string
.它应该一直是string
吗? - 在预加
[]byte
时,始终会创建一个新的基础array.如果要前置的数据是常量,为什么不应该是string
?