Знаете ли вы, что вы можете заменить это простое if-else
заявление в Swift:
let money = 100 if money > 0 { print("Some money") } else { print("No money") }
с этим аккуратным однострочным выражением?
money > 0 ? print("Some money") : print("No money")
Это возможно благодаря так называемому тернарный условный оператор в Свифте.
Полный синтаксис
Для вашего удобства вот структура тернарного оператора:
condition ? true_expression : false_expression
Где:
- состояние это выражение, которое имеет значение true или false.
- истинное_выражение — это фрагмент кода, который выполняется, если условие истинно.
- ложное_выражение — это фрагмент кода, который выполняется, если условие оценивается как ложное.
Как это использовать?
Тернарный условный оператор предлагает сокращение, которое является полезным способом замены простого if-else
заявления.
Однако не стоит делать код менее читабельным, злоупотребляя однострочным оператором if-else.
Таким образом, вам следует использовать его только для действительно простых операторов if-else.
Предыдущий пример в этом посте — идеальный способ его использования. Это достаточно простой оператор if-else, который можно превратить в однострочный оператор.
После сокращения выражения код по-прежнему читается, но становится короче.
Кстати, нет ничего плохого в том, чтобы никогда не использовать в коде однострочные операторы if-else.
Я даже слышал, как некоторые разработчики конвертировали эти выражения обратно в исходные операторы if-else всякий раз, когда они встречали их в базе кода.
Спасибо за прочтение. Надеюсь, вы найдете это полезным. Не стесняйтесь поделиться им, чтобы другие тоже его нашли.