11、Go 基础数据类型 - byte 与 rune
hi,我是温新
byte
与 rune
与字符串类型有关,要对字符串类型做某些相关操作时会用到它。
在 Go 语言中,字符串
的每一个元素叫字符
,如下:
- 1、
int8
类型,或者叫byte
类型,代表ASCII
码的一个字符。byte
类型是int8
类型的别名; - 2、
rune
类型,代表一个UTF-8
字符,需要处理中文等赋值字符时使用。rune
类型是int32
类型的别名。
声明 byte 和 rune
package main
import "fmt"
func main() {
// 注意是单引号
var str1 byte = 'h'
var str2 rune = '世'
fmt.Printf("%d %T\n", str1, str1) // 113 uint8
fmt.Printf("%d %T\n", str2, str2) // 19990 int32
}
遍历字符串
package main
import "fmt"
func main() {
str4 := "hello 世界"
// 会乱码
for i := 0; i < len(str4); i++ {
// 输出的并不是字母,而是 ASCII 的值
fmt.Println(string(str4[i]))
}
// 输出想要的结果
for _, v := range str4 {
fmt.Println(string(v))
}
}
请登录后再评论