Ответ
Типы данных в Swift делятся на простые (скалярные), коллекции и специальные.
1. Простые типы (Value Types):
- Целые числа:
Int,Int8,Int16,Int32,Int64,UInt(беззнаковый). - Числа с плавающей точкой:
Float(32-bit),Double(64-bit, предпочтительный). - Логический тип:
Bool(true/false). - Строки и символы:
String,Character.
2. Типы-коллекции (Value Types):
- Массив (
Array<Element>): Упорядоченная коллекция.[Int] - Множество (
Set<Element>): Неупорядоченная коллекция уникальных элементов.Set<String> - Словарь (
Dictionary<Key, Value>): Коллекция пар ключ-значение.[String: Int]
3. Специальные типы:
- Кортеж (
Tuple): Группировка нескольких значений в один составной тип.let httpStatus: (Int, String) = (404, "Not Found") let namedStatus = (code: 200, message: "OK") - Опциональный тип (
Optional<Wrapped>): Обёртка для значения, которое может отсутствовать (nil).Int?— ключевая особенность Swift для безопасности.var optionalNumber: Int? = 5 optionalNumber = nil // Допустимо - Типы-значения (
struct,enum) и типы-ссылки (class,closure,actor) — определяются пользователем.
Примеры объявления:
let age: Int = 30 // Целое число
let temperature: Double = 36.6 // Число с плавающей точкой
let name: String = "Alice" // Строка
let isAvailable: Bool = true // Булево значение
let scores: [Int] = [95, 90, 85] // Массив
let uniqueIDs: Set<String> = ["A1", "B2"] // Множество
let userInfo: [String: Any] = ["name": "Bob", "age": 25] // Словарь Ответ 18+ 🔞
А, ну вот, смотри, тут про типы данных в Swift, да? Ну, это, блядь, как в жизни — всё делится на простые штуки, на кучки всякого барахла и на какую-то специальную, ёбта, хуйню, которую сам придумываешь.
1. Простые типы (Value Types), они же скалярные, блядь:
- Целые числа: Тут всё понятно,
Int,Int8,Int16... Ага, иUInt— это типа беззнаковый, то есть только плюс, никакого минуса, оптимист, сука. - Числа с плавающей точкой:
Float(32-битный, так себе) иDouble(64-битный, предпочтительный, чтоб наверняка, блядь). - Логический тип:
Bool— либо да, либо нет, либоtrue, либоfalse. Никаких "может быть", ёпта. - Строки и символы:
String— это типа текст, аCharacter— одна буковка. Всё, пиздец.
2. Типы-коллекции (Value Types):
- Массив (
Array<Element>): Упорядоченная куча. Как очередь в магазине, блядь.[Int] - Множество (
Set<Element>): Неупорядоченная куча, но там всё уникальное. Как носки в стирке, только без пары.Set<String> - Словарь (
Dictionary<Key, Value>): Коллекция пар ключ-значение. Типа, "имя" -> "Вася".[String: Int]
3. Специальные типы, вот где начинается магия, блядь:
- Кортеж (
Tuple): Сгруппировал несколько значений в одну кучу и пошёл. Быстро и удобно, в рот меня чих-пых.let httpStatus: (Int, String) = (404, "Not Found") // Ошибка, сука! let namedStatus = (code: 200, message: "OK") // А тут уже с именами, красота. - Опциональный тип (
Optional<Wrapped>): Вот это, блядь, главная фишка Swift, чтобы не вылетать вхлам. Обёртка, внутри которой может быть значение, а может иnil.Int?— это типа "число, но, может, и нет, хз".var optionalNumber: Int? = 5 // Есть число! optionalNumber = nil // А теперь нет, просрали. - Типы-значения (
struct,enum) и типы-ссылки (class,closure,actor) — это уже твоё творчество, блядь. Сам лепишь, как хочешь.
Примеры объявления, чтоб вообще всё стало ясно:
let age: Int = 30 // Целое число, лет тебе, старичок
let temperature: Double = 36.6 // Температура, всё в норме, блядь
let name: String = "Alice" // Имя, привет, Алиса
let isAvailable: Bool = true // Доступен? Да, блядь, доступен!
let scores: [Int] = [95, 90, 85] // Оценки, молодец, отличник
let uniqueIDs: Set<String> = ["A1", "B2"] // Уникальные айдишники, без повторов
let userInfo: [String: Any] = ["name": "Bob", "age": 25] // Инфа о юзере, словарик
Вот и вся система, блядь. Сначала кажется, что овердохуища всего, а потом привыкаешь. Главное — опционалы не проебить, а то будет nil и пиздец.