生活随笔
收集整理的這篇文章主要介紹了
golang之字符串
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
golang的字符串(string)有兩種類型:
一種是byte類型,或者叫uint8類型,代表ASCII碼的一個字符;
一種是rune類型,或者叫int32類型,代表UTF-8的一個字符,當需要處理中文、日文等unicode字符時,則需要用到?rune?類型。
UTF-8是unicode的一種。
func main() {travelString()updateString()countHanString()
}func travelString() {str := "hello傅里葉"// byte類型for i := 0; i < len(str); i++ {fmt.Printf("%v(%c) ", str[i], str[i])}fmt.Println()// rune類型for _, s := range str {fmt.Printf("%v(%c) ", s, s)}fmt.Println()
}func updateString() {str1 := "hello"byteStr := []byte(str1) // 強制類型轉換byteStr[0] = 'a'fmt.Println(string(byteStr))str2 := "傅里葉"runeStr := []rune(str2) // 強制類型轉換runeStr[0] = '佛'fmt.Println(string(runeStr))
}
func countHanString() {str := "hello傅里葉"var count intfor _, s := range str {if unicode.Is(unicode.Han, s) {count++}}fmt.Println(count)
}output:
104(h) 101(e) 108(l) 108(l) 111(o) 229(?) 130() 133() 233(é) 135() 140() 229(?) 143() 182(?)
104(h) 101(e) 108(l) 108(l) 111(o) 20613(傅) 37324(里) 21494(葉)
aello
佛里葉
3
總結
以上是生活随笔為你收集整理的golang之字符串的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。