Heim  >  Artikel  >  Backend-Entwicklung  >  Kurze Analyse des Runentyps in Golang

Kurze Analyse des Runentyps in Golang

藏色散人
藏色散人nach vorne
2021-12-01 14:28:006660Durchsuche

Dieser Artikel wird Ihnen durch die Go-SpracheTutorial-Kolumne über Golang-Runentypen vorgestellt. Ich hoffe, dass er Freunden in Not hilfreich sein wird!

rune-Typ in Golang

In Golang entspricht rune int32, wird aber im Allgemeinen zur Zeichenkonvertierung verwendet. Die len()-Methode in Golang berechnet hauptsächlich die Länge des Arrays.

Der Standard-String-Speicher in Golang erfolgt im utf8-Format. Englische Buchstaben werden in einzelnen Bytes gespeichert, und die Ausführungsergebnisse von -1 und -2 sind 16 und 15. In Golang gibt es zwei Möglichkeiten: utf8.RuneCountInString und []rune(), um utf8 in 4-Byte-int32-Speicher umzuwandeln und dann die Länge des int32-Arrays zu berechnen.

 -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) //可以判断字符是否是汉语

Ergebnisse

-1 
len(address): 16

-2
len(address): 15

-3
len(address): 5

-4
len(address): 5

Das obige ist der detaillierte Inhalt vonKurze Analyse des Runentyps in Golang. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:segmentfault.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen