Ce sunt runele în Golang? Cum se folosește Rune în Golang? Articolul vă va spune răspunsul.

În trecut, aveam un singur set de caractere și se numea ASCII (American Standard Code for Information Interchange). Apoi folosim 7 biți pentru a reprezenta 128 de caractere, inclusiv litere mari și mici în engleză, numere și diverse semne de punctuație și caractere de control al dispozitivului. Din cauza acestei limitări de caractere, majoritatea populației nu a putut să-și folosească sistemul personalizat de scriere. Pentru a rezolva această problemă, Unicode a fost „născut”. Unicode este un superset de ASCII care conține toate caracterele din sistemele de scriere ale lumii de astăzi. Include accente, semne diacritice, coduri de control, cum ar fi tab-uri și rupturi de rând, atribuind fiecărui caracter un număr standard numit „Unicode Code Point” sau în Go o „Rune”. Tipul Rune este un alias pentru int32.
Puncte de reținut despre Rune în Golang
- Amintiți-vă întotdeauna, un șir este o secvență de octeți, nu o rună. Un șir poate conține text Unicode codificat în UTF-8. Dar codul sursă Go este codificat în UTF-8, deci nu este nevoie să codificați șiruri în UTF-8.
- UTF-8 codifică tot Unicode în intervalul de la 1 la 4 octeți, unde 1 octet este folosit pentru ASCII și restul pentru Rune.
- ASCII conține un total de 256 de elemente, dintre care 128 sunt caractere și 0-127 sunt definite ca puncte de cod. Aici, punctul de cod se referă la un element care reprezintă o singură valoare.
De exemplu:
♄
Aceasta este o rună cu valoarea hexazecimală ♄.
Adevărata semnificație a runelor
Reprezintă o constantă Rune, unde o valoare întreagă identifică un punct de cod Unicode. În limba Go, un Literal Rune este reprezentat ca unul sau mai multe caractere cuprinse între paranteze, cum ar fi „g”, „\t”, etc. Între paranteze, aveți voie să puneți orice caracter, cu excepția unei linii noi și a unei paranteze fără escape. Aici, caracterele incluse în aceste paranteze reprezintă valoarea Unicode a caracterului dat în sine, iar șirurile cu mai multe caractere cu o bară oblică inversă (la începutul șirului cu mai multe caractere) codifică valorile într-un format diferit. În Rune Literal, toate șirurile care încep cu o bară oblică inversă sunt nevalide, doar următoarele caractere unice cu escape reprezintă valori speciale atunci când le utilizați cu o bară oblică inversă:
| Caracter |
Unicode |
Descrie |
| \o |
U+0007 |
Alertă sau sonerie |
| \b |
U+0008 |
Backspace |
| \f |
U+000C |
Datele formularului |
| \n |
U+000A |
Avans de linie sau întrerupere de linie |
| \r |
U+000D |
Reveniți la începutul rândului |
| \t |
U+0009 |
Filă orizontală |
| \v |
U+000b |
Tabă verticală |
| \\ |
U+005c |
Backslash |
| \' |
U+0027 |
Apostrof |
| \” |
U+0022 |
Ghilimele duble (valide numai în șiruri de caractere) |
De exemplu:
//Minh họa chương trình Go đơn giản về cách tạo một rune
package main
import (
"fmt"
"reflect"
)
func main() {
// Tạo một rune
rune1 := 'B'
rune2 := 'g'
rune3 := '\a'
// Hiện rune và kiểu của nó
fmt.Printf("Rune 1: %c; Unicode: %U; Type: %s", rune1,
rune1, reflect.TypeOf(rune1))
fmt.Printf("\nRune 2: %c; Unicode: %U; Type: %s", rune2,
rune2, reflect.TypeOf(rune2))
fmt.Printf("\nRune 3: Unicode: %U; Type: %s", rune3,
reflect.TypeOf(rune3))
}
Rezultat:
Rune 1: B; Unicode: U+0042; Type: int32
Rune 2: g; Unicode: U+0067; Type: int32
Rune 3: Unicode: U+0007; Type: int32
Exemplul 2:
![Cum se folosește Rune în Golang Cum se folosește Rune în Golang]()
Rezultat:
Character: ♛, Unicode:U+265B, Position:0
Character: ♠, Unicode:U+2660, Position:1
Character: ♧, Unicode:U+2667, Position:2
Character: ♡, Unicode:U+2661, Position:3
Character: ♬, Unicode:U+266C, Position:4