Si en vez de querer hacer un truncamiento queréis redondear un número Float:
- Debeis importar la librería Foundation
import Foundation
- Y aplicar la función round() a la variable o constante
let age : Float = 17.6
round(age) // age == 18
Introducción a Swift
Qué aprenderás sobre Swift
¿Qué es Swift?
Variables, constantes y comentarios
Mi primer programa - Hello World
Variables y Constantes
¿Cómo funcionan los Type Annotations?
Nomenclatura para nombrar variables
Imprimir valores con la función print
Comentarios en el código
Tipos de datos
Enteros
Floats y Doubles
Literales numéricos
Convertir entre tipos de datos
Apodo para los tipos de datos con Type Alias
Booleanos
Tuplas
Optionals y Nil
Manejo de Optionals
Force unwrapping de una variable optional
Optional Binding
Unwrap Implícito
Gestión de Errores
Uso de try y catch
Aserciones y Precondiciones
Conclusión
Cierre del Curso
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Juan Gabriel Gomila
Aportes 19
Preguntas 3
Si en vez de querer hacer un truncamiento queréis redondear un número Float:
import Foundation
let age : Float = 17.6
round(age) // age == 18
En lenguajes como C++ a veces no se recomienda tanto enteros de 8 o 16 bits por problemas de alineación en la memoria. De hecho existen tipos como uint_fast8_t y cosas similares que le indican al compilador “quiero un tipo de 8 bits, pero tu determina cual es la representación mas rápida”.
¿Cuál es el caso en Swift? ¿Cómo maneja estos detalles el compilador?
ya a mitad del curso, se fue rapidísimo 😱
😕Javascript hace eso por si solo, por que Swift no es como JS???
Por que la vida no es como JS??
Les dejo lo más importante, la documentación:
Documentación Swift 😇
Realmente qué tanta memoria se desperdicia? Si no mal recuerdo este era un problema cuando teníamos memorias ram de menos de 1MB y esa fue la razón para hacer todo ese tipo de definición de memoria pero era cosa que se media en bytes ni siquiera kb.
muy facil realizar el casteo el swift
En el minuto 8:53 se está definiendo cómo “downcasting” a la concersión de un número con mayor precisión (por ejemplo un double) a uno con menor precision (por ejemplo un entero).
Esto sería conceptualmente correcto si la clase de un tipo de dato double heredara de un tipo de dato Entero, pero este no es el caso:
Esto en el lenguaje C se le conoce como typecasting
y es similar:
int suma;
suma = (float)1.7 + (float)1.89
// y esto es distinto de:
suma = 1.7 + 1.89
Estos es lo que aprendi:
Hacer Castings (subir o bajar el tipo de dato) para realizar la operación con mismos tipos de datos.
Curioso, en el casting se pone entre paréntesis el nombre de la variable, en los lenguajes de programación como java se hace con el tipo de dato al cuál se quiere pasar el casting
Cuando se realiza la conversión tambien se podría utilizar un ‘[ ]’ en vez de parentesis?
Ejemplo:
let twoThousandAndOne = twoThousand + UInt16[one]
En vez de UInt16(one)
Es por curiosidad solo.
Casting
Vatos locos alterados
Casting
Muy buena clase y datos interesantes
Muy interesante
1er Comentario de Nuevo, Soy todo un Crack
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?