Sobes.tech
Intern

Quais são os tipos de dados em Swift?

sobes.tech IA

Resposta da IA

Em Swift, os principais tipos de dados incluem:

  1. Tipos inteiros: Int, UInt, Int8, UInt8, Int16, UInt16, Int32, UInt32, Int64, UInt64. Int e UInt têm um tamanho que depende da plataforma atual (geralmente 32 ou 64 bits).

  2. Tipos de ponto flutuante: Float (representa um número de 32 bits com ponto flutuante), Double (representa um número de 64 bits com ponto flutuante, a escolha preferida na maioria dos casos).

  3. Tipo booleano: Bool. Pode assumir os valores true ou false.

  4. Tipo de string: String. Contém uma sequência de caracteres.

  5. Tipo de carácter: Character. Representa um carácter Unicode individual.

  6. Coleções:

    • Arrays (Array) : Coleção ordenada de elementos do mesmo tipo.
    • Conjuntos (Set) : Coleção não ordenada de elementos únicos do mesmo tipo.
    • Dicionários (Dictionary) : Coleção não ordenada de pares chave-valor, onde as chaves são únicas e de um tipo, e os valores de outro tipo.
  7. Tipos opcionais (Optional) : Representam um valor de um tipo determinado ou a ausência de valor (nil). São indicados adicionando ? ou ! ao tipo.

  8. Tuplas (Tuple) : Permitem agrupar múltiplos valores num único tipo composto. Os tipos dos valores na tupla podem ser diferentes.

  9. Uniões discriminadas (Enums) : Permitem definir um grupo de valores relacionados.

  10. Estruturas (Struct) : Tipos de valor. Adequadas para modelar dados.

  11. Classes (Class) : Tipos de referência. Adequadas para modelar objetos complexos e hierarquias.

Exemplos:

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