字符串
字符串为不可变字节(byte)序列,是符合结构。
|
|
头部指针指向数组,无NULL结尾,默认为UTF-8存储Unicode字符。
len返回的是数组的字节长度。
|
|
字符串遍历12345678910func main(){ s := "受命于天" for i := 0; i < len(s); i++ { fmt.Println(s[i]) //输出其byte , 4 * 3 = 12 个字节 } for index, val := range s { fmt.Println(index, val) //输出每个汉字 }}
修改字符串
要求改字符串,须将其转换为可变类型([ ]rune 或者 [ ]byte),修改之后再转回来。但,不管如何转换,都必定重新分配内存并复制数据。