Menu
Coddy logo textTech

Тернарный оператор

Часть раздела Основы путешествия по Swift на Coddy — урок 25 из 86.

Тернарный оператор предоставляет сокращенный способ выбора между двумя значениями на основе условия. Он называется «тернарным», потому что состоит из трех частей: условия, значения, если условие истинно, и значения, если условие ложно.

Синтаксис следует этому шаблону: condition ? valueIfTrue : valueIfFalse

let age = 20
let status = age >= 18 ? "Adult" : "Minor"
print(status)  // Adult

В этом примере Swift проверяет, выполняется ли условие age >= 18. Так как оно истинно, status присваивается значение "Adult". Если бы условие было ложным, оно бы получило "Minor" вместо этого.

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

let score = 75
let result = score >= 60 ? "Pass" : "Fail"
print(result)  // Пройдено
let temperature = 15
let weather = temperature > 25 ? "Hot" : "Cool"
print(weather)  // Прохладно

Вы можете использовать любое условие, которое возвращает логическое значение (Boolean), включая логические операторы, которые вы изучили. Используйте тернарный оператор для простых и понятных вариантов — для более сложной логики лучше подходят другие подходы.

challenge icon

Задание

Легко

Вам предоставлены следующие переменные:

let balance = 150
let withdrawAmount = 200

Используйте тернарный оператор, чтобы определить статус транзакции и вывести результат.

Если balance больше или равен withdrawAmount, статус должен быть "Approved". В противном случае статус должен быть "Insufficient funds".

Выведите статус в одной строке.

Шпаргалка

Тернарный оператор предоставляет сокращенный способ выбора между двумя значениями на основе условия. Он состоит из трех частей: условия, значения, если оно истинно, и значения, если оно ложно.

Синтаксис: condition ? valueIfTrue : valueIfFalse

let age = 20
let status = age >= 18 ? "Adult" : "Minor"
print(status)  // Adult

Еще примеры:

let score = 75
let result = score >= 60 ? "Pass" : "Fail"
print(result)  // Pass

let temperature = 15
let weather = temperature > 25 ? "Hot" : "Cool"
print(weather)  // Cool

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

let balance = 150
let withdrawAmount = 200

// TODO: Напишите свой код ниже
// Используйте тернарный оператор, чтобы определить статус на основе balance и withdrawAmount
// Если balance >= withdrawAmount, статус должен быть "Approved"
// В противном случае статус должен быть "Insufficient funds"

// Выведите статус
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы