Swift предлагает набор встроенных типов данных, которые являются строками, целыми числами, числами с плавающей запятой и логическими значениями.
Эти типы данных также встречаются в большинстве языков программирования.

В этой статье мы подробно обсудим каждый из этих типов данных.

Нить

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

Давайте добавим имя в Playgrounds в кавычках:

На игровых площадках ваши значения отображаются на панели результатов.

Целочисленный тип данных

Целые числа (Ints) - это целые числа (32 и −100). Целые числа полезны, когда вам нужно выполнить вычисления (то есть сложение, вычитание, умножение и т. Д.). Давайте добавим несколько цифр для игровых площадок. В следующей строке под своим именем введите 32, а затем в следующей строке -100, как показано на следующем снимке экрана:

И снова вы видите 32 и −100 на панели результатов под своим именем.

Числа с плавающей запятой

Числа с плавающей запятой - это числа с дробной составляющей, например 4,993, 0,5 и −234,99. Давайте также добавим эти значения в Playgrounds:

Булевы

Логические (bools) называются логическими, потому что они могут быть истинными или ложными. Используйте логические значения, когда вам нужно определить, является ли какая-то логика истинной или ложной. Например, авторизовался ли пользователь? Это утверждение было бы либо правдой (да, они сделали), либо ложью (нет, они этого не сделали). Итак, в Playgrounds добавляем true и false:

Теперь мы рассмотрели все основные типы данных в Swift. Прямо сейчас у нас нет возможности использовать эти типы данных. Использование данных - вот где в игру вступают переменные и константы.

Переменные и константы - где хранятся данные

Переменные и константы подобны контейнерам, содержащим любые данные. Когда вы хотите объявить переменную, вы должны использовать ключевое слово var. Давайте объявим каждый из типов данных, которые мы делали ранее, но на этот раз с использованием переменных и констант.

Создание переменной со строкой

Во-первых, удалите то, что вы уже ввели в Playgrounds. Давайте объявим нашу первую переменную с именем fullName и присвоим ей ваше имя:

var fullName = “Craig Clayton”

В предыдущем коде говорится, что у нас есть переменная с именем fullName и что она содержит строковое значение Крейга Клейтона. Ваша панель результатов показывает ваше настоящее имя в качестве данных:

Создание переменной с целым числом (int)

Теперь создайте переменную с int с именем age и установите ее в соответствии с вашим возрастом (или любым другим, каким вы хотите, чтобы ваш возраст был), добавив следующее:

var age = 40

Наша программа теперь знает, что age - это int. Вы должны увидеть свое имя и возраст на панели результатов, как и раньше:

Debug and print () - обнаружение ваших ошибок

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

print(fullName)
print(age)

Он должен появиться на вашем экране следующим образом:

Теперь вы должны увидеть результат на обеих панелях Результаты и Отладка. Использование print () позволяет нам видеть вещи в нашей панели отладки и, следовательно, проверять ожидаемые результаты. Использование print () - удобный инструмент для отладки.

Добавление чисел с плавающей запятой

Теперь давайте добавим числа с плавающей запятой, используя константу let, в Playground:

let gradeAvg = 2.9
let version:Float = 1.1

Это показано на следующем снимке экрана:

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

Еще вы могли заметить, что мы явно установили для нашей версии значение Float. При работе с числом с плавающей запятой это может быть Double или Float. Не вдаваясь в технические подробности, Double намного точнее, чем Float. Лучше всего это объяснить на примере числа Пи. Пи - это число, в котором цифры идут вечно. Что ж, мы не можем использовать бесконечное число; однако Double и Float определяют точность этого числа. Взгляните на следующую диаграмму, чтобы понять, что я имею в виду под словом "точный":

Итак, в предыдущем примере вы можете видеть, что Float отображает только 3,14, тогда как Double дает гораздо более точное число. В Swift предпочтительнее Double. Поэтому, если вы явно не устанавливаете для числа с плавающей запятой значение Float, Swift по умолчанию использует значение Double. Чтобы установить версию с плавающей точкой, вы должны намеренно установить ее таким образом.

Создание логического

Пришло время создать Bool. Давай сделаем это постоянным. Введите следующий код:

let isConstant:Bool = true

Это показано на следующем снимке экрана:

Поскольку isConstant установлен, давайте сделаем его ложным, добавив следующее:

isConstant = false

В той же строке, что и вы только что ввели, вы увидите красный кружок с белой точкой посередине. Красный кружок означает ошибку. Белый кружок внутри указывает на то, что Xcode может исправить ошибку за вас (в большинстве случаев):

Вы также заметите ошибку в панели отладки, которая представляет собой более подробную версию ошибки. Эта ошибка сообщает нам, что мы пытаемся изменить значение константы, когда не можем этого сделать.

Если вы нажмете на кружок, вы увидите, что Playgrounds предлагает вам изменить let на var, поскольку вы не можете присвоить значение константе:

Поскольку мы хотим, чтобы он оставался постоянным, удалим строку isConstant = false. Мы рассмотрели основные типы данных, но есть и другие основы программирования, которые мы должны обсудить.

Почему константы против переменных?

Вы можете спросить себя: «Зачем вам вообще нужно делать что-то постоянным?». Поскольку константы не могут измениться после запуска приложения, они не дают вам случайно нарушить значение, которое не должно изменяться. Еще одно отличное использование констант - это базовые URL-адреса, поскольку вы не хотите, чтобы они менялись. Когда вы получаете данные, вы не хотите, чтобы значение случайно изменилось на полпути. Apple рекомендует по возможности использовать let. Обычно я использую let, пока Xcode не предупредит меня о предпочтительности var. Если я изменю значение с let на var, то я проверяю, что это именно то поведение, которое я хочу.

Комментарии - оставлять себе заметки или напоминания

Комментарии - отличный способ создавать себе заметки или напоминания. Когда вы комментируете код, это означает, что он не будет выполняться при запуске вашего кода. Используются два типа комментариев: // или / * * /. // используется для однострочного комментария, а / ** / используется для блока текста.

Давайте посмотрим, как они выглядят:

Безопасность типов и вывод типов

Swift - это типобезопасный язык, а это означает, что вам рекомендуется четко понимать, с какими типами значений работает ваш код. Вывод типа означает, что перед запуском кода он быстро проверяет, не задан ли какой-либо другой тип. Если вы это сделаете, Xcode выдаст вам ошибку.

Почему это хорошо? Допустим, у вас есть приложение в магазине, и вы устанавливаете одну из своих переменных как String в одной части кода, но затем случайно устанавливаете ту же переменную, что и Int, в другой части кода. Эта ошибка может вызвать некорректное поведение вашего приложения, которое может привести к его сбою. Обнаружение таких ошибок похоже на поиск иголки в стоге сена. Следовательно, проверка типов помогает писать более безопасный код, помогая избежать ошибок при работе с разными типами.

Теперь мы рассмотрели типы данных и знаем, что строки предназначены для текстовых данных, Int - для целых чисел, Bool - для Boolean, а Double и Float - для чисел с плавающей запятой. Давайте глубже рассмотрим типы данных и посмотрим, как мы можем сделать больше, чем просто присвоить их переменным.

Объединение строк

Конкатенация строк - это результат объединения нескольких строковых литералов для формирования выражения. Итак, давайте создадим его, введя сначала два строковых литерала:

Объединение этих двух дает нам конкатенацию строк. Мы можем комбинировать строки с помощью оператора +; добавить следующее:

let full = firstName + lastName

Когда вы посмотрите на панель результатов, вы заметите, что между нашими именем и фамилией нет пробела.

Кроме того, если мы просто заключим переменные в кавычки, они вернутся к простым строковым литералам и больше не будут переменными.

Строчная интерполяция

Чтобы исправить это, мы можем поместить эти переменные в кавычки, что известно как строковая интерполяция, используя обратную косую черту и круглые скобки вокруг каждой из наших переменных внутри строковой интерполяции. Давайте обновим нашу переменную name до следующего, и вы увидите пробел в имени на панели результатов:

let full = “\(firstName) \(lastName)”

После добавления предыдущей строки наш код должен выглядеть примерно так:

Теперь, когда мы знаем об использовании переменных внутри кавычек, мы можем сделать то же самое внутри print (). Давайте поместим переменные firstName и lastName внутри print () следующим образом:

print(“\(firstName) \(lastName)”)

Операторы печати отлично подходят для проверки, получаете ли вы желаемое значение:

Бац! Теперь у нас есть способ просматривать несколько переменных внутри print () и создавать интерполяцию строк путем объединения нескольких строк.

Спасибо за внимание! Если вам понравилась эта история, пожалуйста, нажмите кнопку 👏 и поделитесь, чтобы найти других! Не стесняйтесь оставлять комментарии 💬 ниже. Есть отзывы? Давайте подключимся в Твиттере.

Если вы нашли эту статью полезной, прочтите Программирование iOS для начинающих - Третье издание.
Вводное руководство по разработке приложений iOS с использованием Swift 4.2 и Xcode 10 Программирование iOS для начинающих - третье издание проведет вас через все аспекты разработки iOS.
Используя Xcode и Swift, строительные блоки современной разработки для iOS, вы быстро получите прочную основу, чтобы начать углубляться в свой путь разработки.