Como este curso está enfocado para todo tipos de usuarios, lo primero que haré será explicar que es una variable. A continuación veremos los tipos y como implementarlos en java.
¿Qué es una variable?
Una variable no es más que un espacio de memoria en el que podemos guardar información. Dependiendo del tipo de información disponemos de diferentes variables, lo que nos permitirá evitar problemas como por ejemplo intentar sumar un número con una letra, ya que al ser tipos de variables diferentes no nos lo permitirá.
Las variables las declararemos del siguiente modo
var numeroFavorito = 1
«var» nos dice que es una variable, a continuación le asignamos un nombre, en este caso «numeroFavorito» y le asignamos un valor.
Como podéis ver, aunque no le hemos dicho el tipo de variable que es, Kotlin se lo ha tragado, esto es porque Kotlin busca el tipo de valor y le asigna un tipo por detrás, el problema de esto es que no siempre estará en lo correcto, así que debemos decirle nosotros el tipo.
var numeroFavorito: Int = 1
Esta vez le hemos puesto dos puntos y acto seguido hemos añadido el tipo de variable, en este caso Int. Ahora veremos con que variables podemos trabajar.
Tipos de variables
Variables numéricas
Estas variables se usan para asignar números, calcular tamaños y realizar operaciones matemáticas entre otras. Dentro de ellas se dividen en dos grupos, las variables enteras y reales.
Integer
Dentro de las enteras encontramos las variables Int, que es la más básica que usaremos, en la cual podremos insertar números naturales, pero hay una limitación. Con una variable de tipo Int no podemos pasar de -2,147,483,647 a 2,147,483,647. Este será el número máximo y mínimo que soportará.
var numeroFavorito: Int = -231
Long
Básicamente es igual que Int, a diferencia de que soporta un rango mayor de números, de -9,223,372,036,854,775,807 a 9,223,372,036,854,775,807.
var numeroFavorito: Long = 47483647
Float
Llegamos a las variables reales. A diferencia de las anteriores, estas pueden almacenar decimales. Float soporta hasta 6 decimales, pero también puede trabajar con números enteros. Esta variable cambia un poco respecto a las demás, pues habrá que meter una «f» al final del valor.
var numeroFavorito: Float = 1.93f
Double
Terminamos con las variables numéricas con los Double. Muy similar a float pero soporta hasta 14 decimales, pero también ocupa más memoria así que para un código óptimo deberemos pensar que tipo será el que más se adapte a nuestro proyecto. Tampoco habrá que añadir ningún tipo de letra al final del valor.
var numeroFavorito: Double= 1.932214124
VARIABLES Alfanuméricas
Aunque los números sean muy útiles, hay veces que necesitaremos guardar cadenas de texto, o una mezcla de caracteres. Para ello tenemos las variables alfanuméricas.
char
La variable Char nos permitirá guardar un carácter de cualquier tipo, lo único que debemos tener en cuenta es que va entre comillas simples.
var numeroFavorito: Char = '1' var letraFavorita: Char = ‘q’ var caracterFavorito: Char = ‘@’
Como podéis ver dentro de una variable Char podemos almacenar cualquier cosa.
String
La variable String será la que más usemos como norma general, nos permite almacenar cualquier tipo de caracteres pero a diferencia del Char, podemos añadir la cantidad que queramos. Para ser exactos, una String no es más que una cadena de Char. Las cadenas deberán ir entre comillas dobles.
var numeroFavorito: String = "Mi número favorito es el 3" var test: String = "Test. 12345!·$%&/"
VARIABLES Booleanas
Nos queda una última variable muy sencilla, pero a la vez muy práctica. Se tratan de los Booleanos.
Boolean
Los Booleanos son variables que solo pueden ser verdaderas o falsas (true o false). Su uso es muy amplio, cuando trabajemos con las condiciones veremos más a fondo este tema. Para asignar un valor basta con añadir true o false sin comillas.
var estoyTriste: Boolean = false var estoyFeliz: Boolean = true
Conclusión
Aunque hayamos visto que no es necesario definir el tipo de variable, teniendo unos conocimientos muy básicos no solo vamos a evitar errores sino también a optimizar nuestro código.
Continúa con el curso: Capítulo 5 – Trabajando con variables en Kotlin
[…] el capítulo 4 vimos los principales tipos de variables, ahora empezaremos a trabajar con ellos para conseguir un […]
No sé si venga al caso, pero BigDecimal es una opción interesante de variable, solo que sería un capítulo aislado. Si no me equivoco, esta viene de las librerías de Java, pero puede usarse en Kotlin. En mi caso, ha sido de gran utilidad, ya que para cálculos geodésicos, se requiere un mayor número de decimales. Gracias por todo lo que aportas a la comunidad.
Sip, los BigDecimal los utilizaba mucho cuando trabajaba en una Fintech, pero para el curso básico no lo veía muy interesante.
Un saludo!
Muchas gracias, pero creo que he notado que la variable Int y Long están en el mismo rango y por lo que comentaste Int debería tener un rango menor y ambas en el artículo están en el mismo Rango saludos.
Toda la razón Maxi. Ya lo he solucionado 🙂
Gracias!
tengo lo siguiente…
var a = 1;
var b = 7;
var c = a / b;
println(«a/b = &c»)
——————————————————–
a/b = 0
——————————————————–
Debería obtener :
a/b = 0.14285
Que estoy haciendo mal….?? :/
Buenas, eso es porque te está pillando por defecto que son de tipo Int y redondea, prueba a asignarle una variable tipo float o doble.
Un saludo
[…] Qué Double y no Int? Pues si recordamos el capítulo 4 – Tipos de variables, recordaremos que un Int es más pequeño que un Double, y si escribimos un número demasiado […]
Hola, creo que faltan tipos como Unit y Any que me gustaria que fueran explicados :p
Gracias
Cuando crearon los tipos en JAVA, a mi entender, deberían haber dejado los float sin tener que poner la f al final del número. Creo que muchos utilizamos del DOUBLE, con el consiguiente consumo de recursos, por el simple hecho que nos es muy engorroso utlizar una f cuando queremos poner número. No sé, es mi punto de vista. A no ser que sean operaciones muy críticas creo que con 6 decimales hay más que suficiente. Se deberían haber diferenciado de cualquier otra forma que no perjudicara a los FLOAT.