Variables y constantes en Kotlin

Publicado por parzibyte en

En este post voy a explicar cómo declarar (y cuál es la diferencia entre) variables, valores y constantes en Kotlin, además de algunas ventajas que tiene cada una.

Variables

Las variables se pueden definir con var y con val, aunque con val ya no se pueden mutar más adelante.

Para declarar una variable se puede indicar su tipo usando dos puntos:

var nombre : String

Y se puede indicar su valor más tarde:

nombre = "Luis"

Otra manera es dejar que el compilador infiera el tipo:

var nombre = "Luis"

Y si queremos declarar la variable, pero no dejar que el compilador infiera el tipo, lo hacemos así:

var nombre : String = "Luis"

Valores con val

Como lo dije, se pueden declarar valores (que son como las constantes) que una vez declarados no pueden ser cambiados.

Para declarar un valor, se debe indicar su valor (valga la redundancia) en su declaración. Ya sea indicando su tipo:

val edad : Int = 22

O dejando que el compilador infiera:

val edad = 22

Pero no se puede declarar y después definir, al menos que sea abstracto. Lo siguiente es incorrecto:

val edad : Int

Constante

Una constante no puede cambiar durante la ejecución del programa (lo mismo hacen los valores), pero aparte de ello, su asignación debe ser constante.

Para declararla se usa const val.

Por cierto, una constante solo puede ser declarada dentro de un objeto o en la parte superior de una clase, eso lo veremos después, por ahora presta atención en su definición.

Su valor se define así:

Pi es 3.1416 y lo sabemos todos, será constante siempre, al menos que cambiemos el valor nosotros manualmente en esa línea.

La diferencia de la constante es que su asignación debe ser constante. Lo siguiente es incorrecto:

En este caso, para obtener la constante, estamos llamando a una función. Y aunque esa función devuelve un solo valor, la misma podría devolver otros valores, es decir, nada asegura que esa función siempre devolverá el mismo valor.

Así que esa asignación es errónea.

Conclusión

En conclusión, siempre trata de usar val. Si realmente requieres que ese valor sea una variable, usa var.

Utiliza const val si, por ejemplo, tienes un objeto de constantes, ya que const val no se puede declarar así sin objetos.

Por cierto, si quieres saber todavía más entre la diferencia de val y var, mira este post.


parzibyte

He trabajado por más de 4 años en el desarrollo de software con experiencia en Java, PHP, JavaScript, HTML, Node.JS, Python, Android y Go. También he trabajado con bases de datos SQL como MySQL y SQLite, así como con bases de datos NoSQL usando MongoDB.Soy bueno utilizando algunos frameworks y herramientas como Firebase, jQuery, AngularJS, VueJS, CodeIgniter, Laravel, BulmaCSS, Bootstrap y Electron.Otros términos que conozco son: Arduino, GraphQL, API's, REST, AJAX, PouchDB, CouchDB, Experiencia de usuario, buenas prácticas de programación, Webpack, NPM, Administración de servidores y programación de scriptsLa plataforma en la que tengo más experiencia es la web, pero en mis ratos libres realizo unos pequeños ejercicios en C# y C.Estoy aquí para ayudarte a resolver tus problemas de programación y depuración :-)

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

A %d blogueros les gusta esto: