Go语言的string和byte slice之间的转换

栏目: Go · 发布时间: 5年前

内容简介:A string contains an array of bytes that, once created, is immutable. By contrast, the elements of a byte slice can be freely modified.Strings can be converted to byte slices and back again:Conceptually, the []byte(s) conversion allocates a new byte array

A string contains an array of bytes that, once created, is immutable. By contrast, the elements of a byte slice can be freely modified.

Strings can be converted to byte slices and back again:

s := “abc”

b := []byte(s)

s2 := string(b)

Conceptually, the []byte(s) conversion allocates a new byte array holding a copy of the bytes of s, and yields a slice that references the entirety of that array. An optimizing compiler may be able to avoid the allocation and copying in some cases, but in general copying is required to ensure that the bytes of s remain unchanged even if those of b are subsequently modified. The onversion from byte slice back to string with string(b) also makes a copy, to ensure immutability of the resulting string s2。

1 在Golang 中string 是不可改变的修改的。

2 []byte转string的时候需要分配一次内存

3 string 转[]byte的时候也需要分配一次内存


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

MATLAB智能算法/科学与工程计算技术丛书

MATLAB智能算法/科学与工程计算技术丛书

编者:温正//孙华克 / 清华大学 / 2017-09-01 / 89.0

一起来看看 《MATLAB智能算法/科学与工程计算技术丛书》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具