Назад к вопросам
Intern
95
questionbank

Какие существуют типы данных в Swift?

Sobes Copilot

Получайте ответы в реальном времени

Ответ от нейросети

sobes.tech AI

В Swift основные типы данных включают:

  1. Целочисленные типы: Int, UInt, Int8, UInt8, Int16, UInt16, Int32, UInt32, Int64, UInt64. Int и UInt имеют размер, зависящий от текущей платформы (обычно 32 или 64 бита).

  2. Типы с плавающей точкой: Float (представляет 32-битное число с плавающей точкой), Double (представляет 64-битное число с плавающей точкой, предпочтительный выбор для большинства случаев).

  3. Булев тип: Bool. Может принимать значения true или false.

  4. Строковый тип: String. Содержит последовательность символов.

  5. Символьный тип: Character. Представляет отдельный символ Unicode.

  6. Коллекции:

    • Массивы (Array): Упорядоченная коллекция однотипных элементов.
    • Множества (Set): Неупорядоченная коллекция уникальных однотипных элементов.
    • Словари (Dictionary): Неупорядоченная коллекция пар "ключ-значение", где ключи уникальны и имеют один тип, а значения имеют другой тип.
  7. Опциональные типы (Optional): Представляют либо значение определенного типа, либо отсутствие значения (nil). Обозначаются добавлением ? или ! к типу.

  8. Кортежи (Tuple): Позволяют группировать множественные значения в один составной тип. Типы значений в кортеже могут быть разными.

  9. Дискриминирующие объединения (Enums): Позволяют определить группу связанных значений.

  10. Структуры (Struct): Типы-значения. Подходят для моделирования данных.

  11. Классы (Class): Типы-ссылки. Подходят для моделирования сложных объектов и иерархий.

Примеры:

// Int
let age: Int = 30

// Double
let price: Double = 19.99

// Bool
let isAvailable: Bool = true

// String
let name: String = "Alice"

// Array
let numbers: [Int] = [1, 2, 3]

// Dictionary
let person: [String: Any] = ["name": "Bob", "age": 25]

// Optional Int
var optionalInt: Int? = nil

// Tuple
let coordinates = (x: 10, y: 20)

// Enum
enum Status {
    case active
    case inactive
}
let currentStatus: Status = .active

// Struct
struct Point {
    var x: Int
    var y: Int
}
let myPoint = Point(x: 5, y: 10)

// Class
class Person {
    var name: String
    init(name: String) {
        self.name = name
    }
}
let newPerson = Person(name: "Charlie")