Мы используем файлы cookie
Мы используем файлы cookie для улучшения работы сайта и предоставления вам персонализированного опыта. Правила использования файлов cookie можно найти в нашей политике конфиденциальности
При итерации по строке в Go с помощью цикла for range
учитываются следующие нюансы:
for range
итерирует по кодовым точкам Unicode (рунам), а не по байтам. Это означает, что каждый элемент итерации представляет собой одну руну (rune
, псевдоним для int32
), а не отдельный байт.for range
возвращает два значения: смещение в байтах (int
) и текущую руну (rune
). Смещение указывает на начальный байт текущей руны в строке.for range
корректно обрабатывает их, воспринимая каждый символ как одну руну, несмотря на то, что он занимает несколько байтов в underlying []byte представлении строки.for
сПри итерации по строке в Go с помощью цикла for range
учитываются следующие нюансы:
for range
итерирует по кодовым точкам Unicode (рунам), а не по байтам. Это означает, что каждый элемент итерации представляет собой одну руну (rune
, псевдоним для int32
), а не отдельный байт.for range
возвращает два значения: смещение в байтах (int
) и текущую руну (rune
). Смещение указывает на начальный байт текущей руны в строке.for range
корректно обрабатывает их, воспринимая каждый символ как одну руну, несмотря на то, что он занимает несколько байтов в underlying []byte представлении строки.for
сЗарегистрируйтесь или войдите, чтобы получить доступ к полным ответам на все вопросы из банка вопросов.