Tipos de Datos en Swift

Lista de Tipos de Datos

El poder de todo lenguaje nace a partir de los tipos de datos que tiene disponible. Son estos tipos de datos los que nos van a ayudar a representar ultimadamente la información y el flujo de nuestro programa.


Int

Un valor de tipo Int representa un número entero, que puede tener un signo positivo o negativo. Hay una variante de este tipo de dato que solamente representa números positivos: UInt.

Int también tiene variaciones específicas para representar enteros en plataformas con diferentes arquitecturas: Int32/UInt32 para plataformas de 32 bits, y Int64/UInt64 para plataformas de 64 bits.

Sin embargo, no debes de preocuparte por esto, ya que:

  • En plataformas de 32 bits, Int tendrá el mismo tamaño que Int32
  • En plataformas de 64 bits, Int tendrá el mismo tamaño que UInt64

Lo anterior es cierto tambíen para UInt y sus variantes.

Representación literal

let dedosEnLaMano = 5
let autosEnLaCochera = 2
let estrellasEnElCielo = 1_000_000 // Puedes usar _ entre números para mejorar la legibilidad

También puedes representar números binarios, octales y hexadecimales con lietarles en Swift:

let decimal = 17
let binario = 0b10001       // 17 en notación binaria
let octal = 0o21            // 17 en notación octal
let hexadecimal = 0x11      // 17 en notación hexadecimal

let suma = decimal + octal  // #=> 34

Float

Un valor de tipo Float representa un número con punto flotante de 32 bits, a diferencia de los tipos de dato Double. Un Float tiene una precisión de por lo menos 6 dígitos decimales.

Representación literal

A diferencia de los tipos de dato Double, cuando se requiere que un tipo de dato sea tomado como Float, es necesario indicarlo a través de la anotación de tipo correspondiente:

let gramos: Float = 85.32

Double

Un valor de tipo Double representa un número con punto flotante de 64 bits.

Los valores de tipo Double tienen una precisión de hasta 15 dígitos decimales, y no es necesario declarar que su tipo al momento de asignarlos a una variable o a una constante, ya que cualquier número literal con punto flotante es inferido a ser de tipo Double.

Representación literal

let decimal = 12.1875
let exponente = 1.21875e1
let hexadecimal = 0xC.3p0

Bool

Un valor de tipo Bool solamente tiene dos posibles valores: true o false.

let isValid = true
let shouldReturn = false

Los valores Bool son especialmente útiles para tomar decisiones en tiempo de ejecución, utilizando condicionales:


if isValid {
	print("Yes, this is valid!")
} else {
	print("No, it was not valid!")
}

En Swift, a diferencia de muchos otros lenguajes, no se puede usar un tipo de dato numérico para representar un Booleano.

let i = 1
if i {
	// Este ejemplo no compilará correctamente, puesto que i
	// es un tipo de dato Int, no Bool.
}

Relacionados