В предыдущей статье мы рассказали об основных типах данных в Swift, а сегодня поговорим об автоматическом определении их типа (аннотации), а также интерполяции строк (создании нового значения из нескольких констант и переменных).
Автоматическая аннотация типов данных
В языке Swift существует два способа указать тип данных, которые хранятся в переменной:
- Присвоить первоначальное значение при инициализации
- Применить метод аннотации типов.
Вместо:
var name: String name ="Tim McGraw"
Лучше использовать:
var name ="Tim McGraw"
Это касается всех типов данных:
var age =25 var longitude =-86.783333 var nothingInBrain =true
Это метод автоматической аннотации: Swift предвидит, какой тип данных следует использовать для переменной в зависимости от введенных данных. Если ввести число вроде -86,783333, Swift отдаст предпочтение типу Double.
Возможность автоматически определять тип данных, присвоенных переменной — важная особенность Swift. Разработчики на Swift могут не аннотировать переменные, Swift сам определит их тип, исходя из присвоенного значения. Такое автоматическое определение типов данных повышает надежность всей системы типов (типобезопасность) и позволяет оптимизировать процесс компиляции кода.
Операторы в Swift
Прежде, чем обращаться к вопросу интерполяции строк, давайте посмотрим, какие основные операторы доступны в Swift:
- Арифметические операторы сложения (+), вычитания (–), умножения (*) и деления (/).
- Оператор инкремента (++) и оператор декремента (––), которые соответственно добавляют и вычитают единицу.
- Составные операторы присваивания: присваивание со сложением (+=), присваивание с вычитанием (–=).
- Операторы сравнения: больше (>), меньше (<), больше или равно (>=), меньше или равно (<=), равно (==), не равно (!=).
Интерполяция строк
За этим сложным названием кроется очень простое действие: объединение переменных и констант внутри строки.
Удалите код, который вы ввели ранее и оставьте только эту строку:
var name ="Tim McGraw"
Если нужно показать пользователю сообщение с его именем, интерполяция строк поможет упростить этот процесс. Вы просто вставляете обратную косую черту, ставите открывающую скобку, пишите код и добавляете закрывающую скобку:
var name ="Tim McGraw""Your name is \(name)"
На панели результатов в одну строку отобразится текст «Your name is Tim McGraw», поскольку интерполяция объединила две отдельные строки в одну.
Такого же результата можно добиться, используя оператор «+»:
var name ="Tim McGraw""Your name is "+ name
Но этот способ нецелесообразен, в особенности, когда нужно объединить сразу несколько переменных разных типов.
Кроме того, интерполяция строк в Swift распознает разные типы данных автоматически. Например:
var name ="Tim McGraw" var age =25 var latitude =36.166667"Your name is \(name), your age is \(age), and your latitude is \(latitude)"
Выполнить операции выше с помощью оператора «+» значительно сложнее, поскольку Swift не позволяет добавлять данные типа Integer и Double в строки.
Сейчас результаты выполнения кода уже могут не помещаться на панели результатов. Чтобы отобразить результаты, измените размер окна или наведите указатель мыши на результат и щелкните кнопку «+», которая появится.
Одна из важных возможностей интерполяции строк это то, что между \( и ) может находиться целое выражение на Swift, например:
var age =25"You are \(age) years old. In another \(age) years you will be \(age * 2)."
Сегодня мы узнали об автоматическом аннотировании типов данных в Swift, которое предупреждает ошибки присвоения переменной неверного значения, и процедуре интерполяции строк, с помощью которой можно объединить несколько переменных и констант внутри одной строки. В следующий раз мы поговорим о массивах.
Источник: Hacking with Swift
Читайте далее: Основы Swift. Массивы
Нужен MVP, разработка под iOS, Android или прототип приложения? Ознакомьтесь с нашим портфолио и сделайте заказ уже сегодня!