Sobes.tech
Junior — Middle

Qual é a diferença entre a unidade de memória byte e o tipo de dados rune na linguagem de programação?

sobes.tech IA

Resposta da IA

Na linguagem Go, byte (byte) é simplesmente um sinônimo do tipo uint8, ou seja, um número inteiro sem sinal de 8 bits, que geralmente é usado para representar um byte de dados.

Rune (rune) é um tipo de dado que representa um ponto de código Unicode, e essencialmente é um sinônimo de int32. Rune permite armazenar caracteres Unicode, incluindo aqueles que requerem mais de um byte em UTF-8.

Exemplo:

var b byte = 65       // ASCII 'A'
var r rune = 'Я'      // Letra cirílica, ponto de código Unicode
fmt.Println(b)        // 65
fmt.Println(r)        // 1071

Assim, byte é útil para trabalhar com dados brutos e fatias de bytes, enquanto rune é para trabalhar com caracteres e texto em Unicode.