Руна в Go — это alias для int32, который представляет одну Unicode code point. Это основной способ, которым Go работает с отдельными символами и обработкой текста.
'A', '中', '🎉'0, что соответствует нулевому символуРуны критически важны при работе со строками, содержащими не-ASCII символы. Например:
var char rune = 'G'
var emoji rune = '🎯'
Строки в Go состоят из байтов, а не рун. Когда ты итерируешь строку с помощью range, Go автоматически преобразует каждый символ в его представление в виде руны:
str := "Hello"
for _, r := range str {
// r — это руна
}
Использование рун позволяет Go:
Индексирование строки возвращает байты, а не руны. Для корректной работы с символами в Unicode строках всегда используй range или приводи строку к срезу рун:
s := "café"
len(s) // 5 байтов, а не 4 символа
Понимание рун критически важно для любого Go разработчика, который работает с международным текстом или сложными операциями со строками.
Rune в Go — это alias для int32, который представляет одну кодовую точку Unicode и занимает 4 байта памяти.
Новый — ещё не проверен сообществом
Вы