O que são Runas em Golang? Como usar Runa em Golang? O artigo lhe dará a resposta.

No passado, tínhamos apenas um conjunto de caracteres, chamado ASCII (American Standard Code for Information Interchange). Em seguida, usamos 7 bits para representar 128 caracteres, incluindo letras maiúsculas e minúsculas, números, vários sinais de pontuação e caracteres de controle de dispositivo. Devido a essa limitação de caracteres, a maioria da população não conseguiu usar seu sistema de escrita personalizado. Para resolver esse problema, o Unicode "nasceu". Unicode é um superconjunto do ASCII que contém todos os caracteres dos sistemas de escrita do mundo atualmente. Inclui acentos, sinais diacríticos, códigos de controle como tabulações e quebras de linha, atribuindo a cada caractere um número padrão chamado "Ponto de Código Unicode" ou, no Go, "Runa". O tipo Rune é um alias para int32.
Pontos a lembrar sobre Runas em Golang
- Lembre-se sempre: uma string é uma sequência de bytes, não uma Runa. Uma string pode conter texto Unicode codificado em UTF-8. Mas o código-fonte do Go é codificado em UTF-8, então não há necessidade de codificar strings em UTF-8.
- UTF-8 codifica todo Unicode no intervalo de 1 a 4 bytes, onde 1 byte é usado para ASCII e o restante para Runas.
- ASCII contém um total de 256 elementos, dos quais 128 são caracteres e 0-127 são definidos como pontos de código. Aqui, ponto de código se refere a um elemento que representa um único valor.
Por exemplo:
♄
Esta é uma Runa com valor hexadecimal ♄.
O Verdadeiro Significado das Runas
Representa uma constante rúnica, onde um valor inteiro identifica um ponto de código Unicode. Na linguagem Go, um Literal Rúnico é representado como um ou mais caracteres entre parênteses, como 'g', '\t', etc. Entre os parênteses, você pode colocar qualquer caractere, exceto uma nova linha e um parêntese sem escape. Aqui, os caracteres entre parênteses representam o valor Unicode do próprio caractere fornecido, e sequências de caracteres múltiplos com uma barra invertida (no início da sequência de caracteres múltiplos) codificam os valores em um formato diferente. Em Rune Literal, todas as strings que começam com uma barra invertida são inválidas, apenas os seguintes caracteres de escape simples representam valores especiais quando você os usa com uma barra invertida:
| Personagem |
Unicode |
Descrever |
| \um |
U+0007 |
Alerta ou sino |
| \b |
U+0008 |
Backspace |
| \f |
U+000C |
Dados do formulário |
| \n |
U+000A |
Alimentação de linha ou quebra de linha |
| \r |
U+000D |
Voltar ao início da linha |
| \t |
U+0009 |
Guia horizontal |
| \v |
U+000b |
Guia vertical |
| \\ |
U+005c |
Barra invertida |
| \' |
U+0027 |
Apóstrofo |
| \” |
U+0022 |
Aspas duplas (válidas somente em sequências de caracteres) |
Por exemplo:
//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))
}
Resultado:
Rune 1: B; Unicode: U+0042; Type: int32
Rune 2: g; Unicode: U+0067; Type: int32
Rune 3: Unicode: U+0007; Type: int32
Exemplo 2:
![Como usar Runa em Golang Como usar Runa em Golang]()
Resultado:
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