golang遍历字符串,有多种方式:
``
点击查看代码
// 字符串,把字符串起来
s := "中国人,zgr"
for pos, char := range s {
// range是按照字符来遍历,返回字符出现的位置和对应字符内容(字符需要4个字节,int32类型),可以用%c展现
log.Printf("pos:%d,char:%c", pos, char)
}
s2 := []rune(s) // 转换为[]rune类型,rune是int32的别名,为了区分int和字符
for i := 0; i < len(s2); i++ {
log.Printf("idx:%d,char:%c", i, s2[i])
}
var b rune='A' // rune是int32, 4个字节,可以存储所有unicode字符
log.Printf("rune:%c,%d",b,b)
var i32 int32 = 65
log.Printf("i32:%c",i32)
// b==i32
log.Printf("i32:%c,equal:%v",i32,b==i32)
// len,如果参数是字符串,则表示对应参数的 字节数量;如果是slice,则表示切片长度
log.Println(len(s), len(s2))