Maison >développement back-end >Golang >Que sont les runes et en quoi diffèrent-elles des octets en Go ?

Que sont les runes et en quoi diffèrent-elles des octets en Go ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-18 03:23:13111parcourir

What are Runes and How Do They Differ from Bytes in Go?

Qu'est-ce qu'une Rune dans Go ?

Go utilise le terme « rune » comme alias pour le type de données entier int32. C'est un peu déroutant car les entiers ne sont généralement pas utilisés pour représenter des caractères. Cependant, dans Go, les runes jouent un rôle important dans la manipulation des personnages.

Les littéraux runiques

Les littéraux runiques dans Go sont représentés en plaçant un seul caractère entre guillemets simples, tels que comme « a » ou « z ». Ces littéraux représentent en réalité des points de code Unicode. Par exemple, « a » correspond au point de code 97.

Manipulation de caractères basée sur les runes

La fonction SwapRune fournie prend une rune en entrée et permute sa casse. Il utilise une instruction switch pour gérer deux cas : la conversion des caractères minuscules en majuscules et vice versa.

Les conditions de l'instruction switch, telles que 'a' <= r && r <= 'z', comparez la valeur de la rune aux points de code Unicode pour « a » et « z ». Si la rune se situe dans cette plage, elle est considérée comme un caractère minuscule et son point de code est ajusté en conséquence pour produire la version majuscule.

Manipulation des runes et des chaînes

Le SwapCase La fonction démontre l'utilisation de runes dans la manipulation de chaînes. Il utilise la fonction strings.Map pour appliquer la fonction SwapRune à chaque rune de la chaîne d'entrée, en échangeant efficacement la casse de tous les caractères.

Octet contre Rune

Alors que les runes sont utilisées pour représenter les points de code Unicode, les octets représentent des octets individuels dans une séquence d'octets. En ASCII, où chaque caractère est représenté par un seul octet, les runes et les octets sont interchangeables. Cependant, en Unicode, qui prend en charge une plus large gamme de caractères, un seul caractère Unicode peut être codé sur plusieurs octets. Dans ces situations, les runes fournissent une représentation plus précise des caractères que les octets.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn