En este post voy a exponer los tipos de datos numéricos en Kotlin; además de la conversión que se puede hacer entre cada uno de ellos.
En Kotlin tenemos 6 tipos de datos numéricos. Veamos la siguiente tabla:
|Tipo de dato|Longitud en bits|Rango
|--|--|--
|Byte|8|-128 a 127
|Short|16|-32,768 a 32,767
|Int|32|-2,147,483,648 a 2,147,483,647
|Float|32|1.4E-45 a 3.4028235E38
|Double|64|4.9E-324 a 1.7976931348623157E308
|Long|64|-9,223,372,036,854,775,808 a 9,223,372,036,854,775,807
Se declaran ya sea indicando el tipo o dejando que el compilador lo infiera:
var miByte : Byte = 127
var miShort : Short = -51
var miInt : Int = -10
var miFloat : Float = -51.3F
var miDouble : Double = 1584.2
var miLong : Long = 1584L
println(miByte)
println(miShort)
println(miInt)
println(miFloat)
println(miDouble)
println(miLong)
Kotlin proporciona varias maneras de realizar conversiones de números; de manera que podemos convertir, por ejemplo, un Byte a un Int, un Float a un Double, etcétera.
var miByte : Byte = 127
var miInt : Int = miByte.toInt()
miInt += 500
println(miInt)
var miFloat = 800.6f
var otroByte : Byte = miFloat.toByte()
println(otroByte)
// Todas las funciones:
println(otroByte.toByte())
println(otroByte.toShort())
println(otroByte.toInt())
println(otroByte.toFloat())
println(otroByte.toDouble())
println(otroByte.toLong())
Recuerda que debes tener cuidado con las conversiones; sobre todo cuando conviertes de un tipo grande a uno pequeño; es decir, de uno que tiene más bits que el otro.
Las funciones de conversión son:
Y todos los números las tienen
Si quieres probar el código, puedes hacerlo aquí.
Hoy te voy a presentar un creador de credenciales que acabo de programar y que…
Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…
En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…
En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…
Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…
En este artículo te voy a enseñar cómo usar un "top level await" esperando a…
Esta web usa cookies.