Обложка канала

iOS Dev

iOS разработчик, который делится фишками, своим опытом и опытом других. В этом канале вы сможете найти истории из жизни, подходы к реализации а также новости и тренды из мира iOS-разработки Авторский канал, iOS разработка

iOS Dev

4 года назад
Открыть в
Использование кортежей в Swift на примере switch/case Вы можете использовать кортежи и для проверки нескольких значений в одном операторе switch. Каждый элемент кортежа может проверяться на разное значение или интервал значений. В качестве альтернативы можно использовать символ подчеркивания (_) для поиска любого возможного значения. В приведенном ниже примере берется точка (x, y), выраженная как простой кортеж типа (Int, Int), и классифицируется на графике, который следует за примером. let somePoint = (1, 1) switch somePoint { case (0, 0): print("\(somePoint) в начале координат") case (_, 0): print("\(somePoint) на оси x") case (0, _): print("\(somePoint) на оси y") case (-2...2, -2...2): print("\(somePoint) внутри рамки") default: print("\(somePoint) за пределами рамки") } // Выведется "(1, 1) внутри рамки" Оператор switch определит, находится ли точка в начале координат (0, 0), на красной оси x, на зеленой оси y, внутри синей рамки 4 на 4 с центром в начале координат или за ее пределами. 😉 В отличие от языка C, Swift позволяет в switch/case рассматривать одно и то же значение или интервал значений. Фактически, точка (0, 0) может соответствовать всем четырем вариантам в этом примере. Однако, если возможно несколько совпадений, всегда используется первый подходящий вариант. Точка (0, 0) попадает под условие первого кейса (0, 0), поэтому все остальные случаи совпадения будут проигнорированы. @iOS Dev