首頁  >  文章  >  後端開發  >  簡析golang中rune類型

簡析golang中rune類型

藏色散人
藏色散人轉載
2021-12-01 14:28:006644瀏覽

本文由go語言教學專欄為大家介紹關於golang rune類型,希望對需要的朋友有幫助!

golang中rune型別

在golang中rune等同於int32,只是一般用於字元轉換。 golang中len()方法主要計算數組長度。

golang中預設存儲字串是採用utf8格式,utf8採用變長字節存儲,英文字母是單字節存儲,中文是3個字節存儲,所以-1和-2的執行結果是16和15。 golang中有utf8.RuneCountInString和[]rune()兩種方式將utf8轉換成4個位元組的int32存儲,然後計算int32數組的長度。

 -1
 address := "this is shanghai"
 fmt.Println("len(address):",len(address))
 
 -2
 address := "this is shanghai"
 fmt.Println("len(address):",len(address))
 
 -3
 addressThree := "这是在上海"     
 fmt.Println("len(address):",utf8.RuneCountInString(addressThree))

 -4
 fmt.Println("len(address):",len([]rune(addressThree)))
 
 -5 
 unicode.Is(unicode.Han, c) //可以判断字符是否是汉语

結果

-1 
len(address): 16

-2
len(address): 15

-3
len(address): 5

-4
len(address): 5

以上是簡析golang中rune類型的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:segmentfault.com。如有侵權,請聯絡admin@php.cn刪除