go语言将字符串作为一种原生的基本数据类型,字符串的初始化可以使用字符串的字面量
var a = "hello,world"
1) 字符串是常量,可以通过类似数组的索引访问其字节单元,但是不能修改某个字节的值
var a = "hello,world"
b := a[0]
a[1]='a'
package main
import "fmt"
func main() {
var a = "hello , world"
b := []byte(a)//此时打印b,以rane方式输出所有码元
// b := a[0] // 数组a的第0个索引
// fmt.Printf("%c", b) //以UTF-8形式展示所有
// a[1] = 'a'
fmt.Println(b)
}
按数组切割,数组不能修改值,所以
a[1] ='a' 是错误的
2)字符串转换为切片[]byte(s)要慎用,尤其是当数据量较大时,每转换一次都需要复制内容
3)字符