Sobes.tech
Назад к вопросам
Junior — Middle
78

Какие результаты получают при последовательном обходе символов строки?

Компании, где спрашивали
СБЕРСБЕР

Ответ от нейросети

sobes.tech AI

При последовательном обходе символов строки в Go (Golang) обычно используют цикл for range, который итерируется по рунам (runes) — Unicode-кодовым точкам.

Результатом такого обхода является получение каждого символа строки в виде значения типа rune и его позиции (индекса в байтах).

Пример:

package main
import (
    "fmt"
)

func main() {
    s := "Привет"
    for i, r := range s {
        fmt.Printf("Индекс: %d, Символ: %c\n", i, r)
    }
}

Вывод будет содержать индекс (в байтах) и соответствующий символ. Это важно, так как в UTF-8 символы могут занимать разное количество байт.

Таким образом, последовательный обход позволяет корректно работать с Unicode-строками, получая каждый символ целиком, а не отдельные байты.