Sobes.tech
Intern

Ce tipuri de date există în Swift?

sobes.tech AI

Răspuns de la AI

În Swift, principalele tipuri de date includ:

  1. Tipuri întregi: Int, UInt, Int8, UInt8, Int16, UInt16, Int32, UInt32, Int64, UInt64. Int și UInt au o dimensiune care depinde de platforma curentă (de obicei 32 sau 64 de biți).

  2. Tipuri cu virgulă mobilă: Float (reprezintă un număr pe 32 de biți cu virgulă mobilă), Double (reprezintă un număr pe 64 de biți cu virgulă mobilă, alegerea preferată în majoritatea cazurilor).

  3. Tip boolean: Bool. Poate lua valorile true sau false.

  4. Tip șir de caractere: String. Conține o secvență de caractere.

  5. Tip caracter: Character. Reprezintă un singur caracter Unicode.

  6. Colecții:

    • Array-uri (Array): Colecție ordonată de elemente de același tip.
    • Seturi (Set): Colecție neordonată de elemente unice de același tip.
    • Dicționare (Dictionary): Colecție neordonată de perechi cheie-valoare, unde cheile sunt unice și de un anumit tip, iar valorile de alt tip.
  7. Tipuri opționale (Optional): Reprezintă fie o valoare de un anumit tip, fie absența acesteia (nil). Sunt indicate prin adăugarea ? sau ! la tip.

  8. Tupluri (Tuple): Permite gruparea mai multor valori într-un singur tip compus. Tipurile valorilor din tuplu pot fi diferite.

  9. Enum-uri: Permite definirea unui grup de valori legate.

  10. Structuri (Struct): Tipuri de valoare. Potrivit pentru modelarea datelor.

  11. Clase (Class): Tipuri de referință. Potrivit pentru modelarea obiectelor complexe și ierarhiilor.

Exemple:

// 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")