Карточка Junior Коллекции и строки спрашивают часто обновлено

Как взять n-й символ строки в Swift

Вопрос

Как получить символ строки по номеру n?

Попробуйте сами

Ответьте про себя или вслух, потом откройте ответ и сверьтесь.

Показать ответ и разбор

Коротко

s[s.index(s.startIndex, offsetBy: n)]. Это O(n).

Ответ

s[s.index(s.startIndex, offsetBy: n)]. Это O(n). Если нужен частый доступ по номеру, один раз преобразуйте: let chars = Array(s).

Разбор

Есть безопасный вариант index(_:offsetBy:limitedBy:), который вернёт nil вместо падения за границей.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.