Swift Academy · Урок

Циклы for-in с диапазонами

Итерируйте с помощью for-in, используя целочисленные диапазоны и операторы закрытых и полуоткрытых диапазонов

Урок 1 из 412 шагов

«Циклы for-in с диапазонами» — бесплатный урок Swift Academy на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Swift Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Swift Academy содержит 4 уроков всего.

Добро пожаловать

Циклы позволяют повторять действия, не дублируя код. Цикл `for-in` — самый универсальный инструмент итерации в Swift: он работает с диапазонами, коллекциями и любой последовательностью.

Замкнутый диапазон: a...b

Оператор замкнутого диапазона `...` включает обе границы: ```swift for i in 1...5 { print(i) // 1, 2, 3, 4, 5 } ``` Это самый распространённый диапазон, используемый с `for-in`.

Полуоткрытый диапазон: a..<b

Полуоткрытый диапазон `..<` не включает верхнюю границу — он отлично подходит для индексации с нуля: ```swift for i in 0..<5 { print(i) // 0, 1, 2, 3, 4 } ``` Он удобен при переборе индексов массива: `0..

Односторонние диапазоны

Односторонние диапазоны продолжаются до одного из концов: ```swift let nums = [10, 20, 30, 40, 50] for n in nums[2...] { print(n) } // 30, 40, 50 for n in nums[..<3] { print(n) } // 10, 20, 30 ``` Они очень удобны для получения части коллекции, начиная с определённой позиции или заканчивая ею.

stride(from:to:by:)

Используйте `stride`, когда нужен пользовательский размер шага: ```swift for i in stride(from: 0, to: 10, by: 2) { print(i) // 0, 2, 4, 6, 8 } for i in stride(from: 10, through: 0, by: -3) { print(i) // 10, 7, 4, 1 } ```

Игнорирование переменной цикла

Используйте `_`, если значение итерации вам не нужно: ```swift var sum = 0 for _ in 1...10 { sum += 1 } print(sum) // 10 ``` Так вы показываете читателям, что важен сам счётчик, а не индекс.

Перебор символов строки

Строки соответствуют протоколу `Sequence`, поэтому их символы можно перебирать напрямую: ```swift for char in "Swift" { print(char) // S, w, i, f, t } ``` Каждый `char` имеет тип `Character`.

Диапазоны как значения

Диапазоны — это полноценные значения Swift, их можно сохранять: ```swift let valid: ClosedRange = 1...100 if valid.contains(42) { print("In range") } ``` Это удобно для проверки значений и сопоставления в вариантах switch.

Вложенные циклы for-in

Циклы можно вкладывать друг в друга для перебора многомерных данных: ```swift for row in 1...3 { for col in 1...3 { print("(\(row),\(col))", terminator: " ") } print() } ``` При глубокой вложенности учитывайте сложность O(n²).

Обратный отсчёт с помощью Reversed

Разверните диапазон с помощью `.reversed()`: ```swift for i in (1...5).reversed() { print(i) // 5, 4, 3, 2, 1 } ``` Другой вариант — использовать `stride(from:through:by:)` с отрицательным шагом.

Быстрая проверка

Какой оператор диапазона **не включает** верхнюю границу?

Итоги

Главное: • `a...b` — замкнутый диапазон (включает b) • `a..
Можно начать бесплатно

Изучай Swift с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
122
Уроки
409

Часто задаваемые вопросы

Урок «Циклы for-in с диапазонами» бесплатный?

Да — полный текст урока «Циклы for-in с диапазонами» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Swift Academy, подпишись на CoddyKit PRO. Курс Swift Academy содержит 4 уроков всего.

Чему я научусь в уроке «Циклы for-in с диапазонами»?

Итерируйте с помощью for-in, используя целочисленные диапазоны и операторы закрытых и полуоткрытых диапазонов Ты практикуешь Swift Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Swift Academy?

Предыдущий опыт не требуется. Swift Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.

Сколько времени занимает урок «Циклы for-in с диапазонами»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Swift Academy?

Да. Каждый урок Swift Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Циклы for-in с диапазонами
  2. Циклы while и repeat-while
  3. Итерация по коллекциям с for-in
  4. break, continue и именованные инструкции
← Назад к Swift Academy