Go 語言的字符有以下兩種:
- uint8 類型,或者叫byte類型,代表的的ascii的一個字符
- rune類型,代表的是一個utf8字符
所以說,當我們處理帶有漢字的符合字符時,則需要rune類型。rune類型實際是一個int32
package main
import "fmt"
func main() {
s := "你好 golang"
for _, val := range s {
// 一個漢字佔3個字節,一個字符佔一個字節,所有打印的小標是0,3,6,7
// fmt.Print(key) // 0 3 6 7 8 9 10 11 12
fmt.Printf("%v(%c)", val, val)
}
}