Вы определенно использовали ключевое слово return
или, возможно, видели ключевое слово break
. Эти ключевые слова изменяют порядок выполнения вашего кода. Они могут передавать управление от одного фрагмента кода к другому. Но на самом деле в Swift есть пять операторов передачи управления. И это: break
, continue
, fallthrough
, return
и throw
.
В настоящей статье рассмотрим следующие вопросы:
- Что это за ключевые слова?
- Когда каждый из них используется?
- Почему это может быть полезно использовать?
Для чего используются эти ключевые слова?
Как я упоминал выше, вы используете эти ключевые слова для управления потоком вашего кода. Вы можете перемещать его из одного фрагмента кода в другой. И это может быть очень полезно или даже необходимо для логики вашей программы.
Мы кратко рассмотрим каждый из них с примерами того, как и когда его использовать.
Перерыв
Оператор управления Break
позволяет завершить выполнение всего оператора потока управления. Он используется внутри цикла или блока switch
для завершения его выполнения и выхода из него раньше.
Рассмотрим следующий пример, где вы хотите выполнить итерацию по массиву чисел, и когда вы найдете искомое число, напечатайте его и завершите цикл, потому что нет необходимости продолжать итерацию, тратить время и ресурсы, когда число было уже нашел.
Продолжать
Ключевое слово continue
используется внутри цикла. Он говорит ему остановить текущую итерацию и начать следующую. Он не выходит из цикла полностью, а запускается снова в начале следующей итерации.
Рассмотрим следующий пример, где вы хотите удалить все дубликаты в массиве с помощью цикла. Когда вы перебираете массив и обнаруживаете, что это число уже повторяется во временном массиве, вы используете ключевое слово continue
, чтобы начать следующую итерацию.
Проваливаться
Это ключевое слово используется внутри оператора switch
. По умолчанию, когда switch
находит первое совпадение, он выполняет код, связанный с этим конкретным случаем, и завершает выполнение инструкции switch
.
Однако, например, в языке C вам нужно будет использовать break
в конце каждого случая, если вы не хотите, чтобы он провалился и выполнил другое совпадение. Но в Swift вам не нужно его использовать, потому что, как я упоминал ранее, когда выполняется код, связанный с первым подходящим случаем, весь оператор switch
завершается. И если вы хотите, чтобы оператор switch
продолжал искать другое совпадение, вам нужно использовать ключевое слово fallthrough
.
Рассмотрим следующий пример, где вы хотите напечатать все диапазоны, содержащие определенное число. И между этими диапазонами может быть пересечение, которое говорит о том, что существует вероятность того, что более чем один диапазон содержит определенное число. Но без ключевого слова fallthrough
оператор switch
выполнит только первое совпадение.
Возвращаться
Я предполагаю, что это ключевое слово, с которым вы знакомы лучше всего. И это не будет сюрпризом, потому что вы, вероятно, будете использовать его больше всего в своей карьере из этих пяти ключевых слов.
Это ключевое слово простое и используется внутри функции, когда вы хотите вернуть какое-то значение.
Рассмотрим следующий пример, когда вы хотите удвоить число и вернуть результат из функции.
Бросать
Часто может возникнуть ситуация, когда ваша функция может вызвать ошибку. В этом случае вы можете пометить свою функцию как выбрасывающую, используя ключевое слово throws
в объявлении функции после ее параметров.
Теперь внутри этой выбрасывающей функции вы можете выбросить ошибку в том месте, где она может появиться.
Рассмотрим следующий пример, где вы хотите проверить, может ли музыкальный проигрыватель воспроизводить определенную песню. Если песня существует, то проигрыватель воспроизводит ее. В противном случае выдает ошибку, что песня, которую вы пытаетесь воспроизвести, не добавлена в ваш плейлист с использованием ключевого слова throw
.
Вам также придется обрабатывать эту ошибку, иначе она просто приведет к сбою вашего приложения.
Краткое содержание
Подводя итог, эти пять ключевых слов: break
, continue
, fallthrough
, return
и throw
используются для управления потоком вашей программы и могут перемещать ее из одного места в другое. Каждое из этих ключевых слов используется в определенных случаях, но каждое из них очень мощное и полезное.
Спасибо за прочтение!
если вам понравилась эта статья, не забудьте хлопнуть в ладоши, чтобы другим было легче ее найти.