Go基础之字符类型
// ByteType project main.go package main import ( "fmt" ) func main() { var name string = "zhao 雷" length := len(name) for i := 0; i < length; i++ { ch := name[i] fmt.Println(i, ch) //ch类型为byte } /* 输出: 0 122 1 104 2 97 3 111 4 32 5 233 6 155 7 183 */ fmt.Println("-----------------") for i, ch := range name { fmt.Println(i, ch) //ch类型为rune } /* 输出: 0 122 1 104 2 97 3 111 4 32 5 38647 */ }
说明:
1、Go语言支持两种字符类型:byte代表UTF-8,rune代表Unicode
2、根据字符串下标取字符,类型为byte(中文在UTF-8中占3个字节,而不是一个)