
В попередній статті ми розповіли про основні типи даних у 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 або прототип додатку? Ознайомтеся з нашим портфоліо і зробіть замовлення вже сьогодні!