Aún no tienes acceso a esta clase

Crea una cuenta y continúa viendo este curso

Variables en Kotlin

8/37
Recursos

Aportes 19

Preguntas 3

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

VARIABLES

Sirve para almacenar datos temporales y utilizarlos a lo largo de nuestro código.. En kotlin las variables solo pueden almacenar un solo dato.

TIPOS DE VARIABLES

VAR : Son variables de lectura y escritura, estas variables el valor puede cambiarse.

VAL : Son variables de solo lectura, dichas variables una vez asignado el valor no puede ser cambiado posteriormente.

CONST : es una variante de las variables de solo lectura, estas se definen fuera de la función y se escriben con la palabra reservada const seguida de la palabra reservada val, este tipo de variables son usada para valores que nunca cambian.

En Kotlin no se puede cambiar el tipo de dato con que se a definido una variable, si la variable se definio con el tipo de dato String solo podremos actualizar dicho valor por otro String, por ejemplo no podemos pasar de un string a un numero.

val es equivalente de final en Java

Variables en Kotlin
Las variables en Kotlin nos permiten, al igual que en Java, asignar valores que luego pueden ser modificados y utilizados en distintos puntos de nuestro programa, siempre y cuando estén dentro del ámbito en el que se ejecuta dicho código.

Pero me voy a centrar en las diferencias que encontramos con Java.

1. Las variables pueden ser mutables e inmutables
Esto también se puede hacer en Java (marcándola como final si queremos que no se pueda modificar), pero en Kotlin es mucho menos verboso y cobran una nueva importancia: en Kotlin se prefieren los valores inmutables siempre que sea posible.

El que la mayor parte de nuestro programa sea inmutable genera muchos benificios, algunos de los cuales puedes ver en este artículo que escribí en GenbetaDev al respecto.

2. Se declaran indicando val o var según sean inmutables o mutables
Algo muy interesante de Kotlin es que en muchos puntos no hay que especificar el tipo de datos con el que estamos trabajando, siempre que el compilador lo pueda inferir.

Así que sólo tenemos que indicarle var o val en función del tipo de variable que queramos generar, y el tipo podrá normalmente inferirse del lado derecho. Aún así, podemos especificarle un tipo de forma explícita.

Algunos ejemplos:

var x = 7
var y: String = "my String"
var z = View(this)
Spoiler: como ves, no hace falta utilizar new para crear una nueva instancia de un objeto.

3. Se hace casting automático de tipos
Siempre que el compilador sea capaz de de detectar que no hay otra opción posible, el casting se hará automáticamente. ¡Una maravilla!

val z: View = findViewById(R.id.my_view)
if (z is TextView) {
z.text = “I’ve been casted!”
}
Curiosidad: ¿has visto que no he llamado a setText() ? ¡La resolveré en los próximos artículos!

4. En Kotlin todo es un objeto
No existen los tipos básicos, y no existe void. Si algo no devuelve nada, en realidad devuelve el objeto Unit. La mayoría de las veces se puede omitir, pero está ahí, acechando.

Por tanto, todo esto son objetos:

val x: Int = 20
val y: Double = 21.5
val z: Unit = Unit
5. Los tipos numéricos más simples no se pueden asignar a otros más complejos
Por ejemplo, un entero no puede ser asignado a una variable de un long. Esto no compila:

val x: Int = 20
val y: Long = x
Necesita hacerse un casting explícito:

val x: Int = 20
val y: Long = x.toLong()
Conclusión
Estas son algunas de las diferencias más destacadas que puedes encontrar entre las variables en Java y en Kotlin. En general, las variables en Kotlin aportan mucha más flexibilidad, seguridad (debido a la convención de usar val siempre que se pueda) y un código más limpio y conciso.

fuente: https://devexperto.com/variables-kotlin/

Les comparto el código de la clase ya con algunos comentarios

//Las constantes no deben cambiar nunca y se generan antes de darle compilar la aplicación 
const val PI = 3.1416

fun main(args: Array<String>) {
    println("Hola Compañero que nunca para de aprender!")

    //Variable de lectura y escritura
    var dinero = 10
    println(dinero)
    dinero = 5
    println(dinero)

    //variable de solo lectura (No se puede modificar)
    val nombre = "Maria"
    println(nombre)
    println(PI)
}

Funcion de Variables en kotlin:
var = el valor puede cambiarse

val = Una vez asignado el valor no puede volver a cambiarse

constantes = se definen fuera de la función de forma reservada “const val” y se utilizan para valores que no deben cambiar nunca

variables
son información almacenada en RAM

tipos de variables
-entero
-cadena de texto
-booleano

se declara
var

var nombre : int = 10 

pero kotlin es tan poderoso que puedes omitir la asignación del tipo de variable>

cambiar valor de una variable

nombre = nuevoValor 

función println
nos permite imprimir en pantalla

println(nombre)

variables solo lectura
se les asigna un valor al principio pero no podrá ser cambiado después

se declara

val nombre = valor 

variantes de variable
Se declaran fuera de la función iniciando con const seguido de val

const val pi = 3.1416 

esto separa las declaraciones en tiempo de ejecución y de compilación

Justo me acabo de topar con una pregunta: ¿Cuántos valores puede tener la siguiente variable?

val a : Boolean

Teóricamente y al momento de compilar solo admite 2 valores (true o false), ya que es de tipo non-null

Otra cosa sería si la pregunta indicara:

val a : Boolean?, la cual sí puede aceptar un null como valor porque el programa lo indica.

Hola, les comparto este repositorio que sirve de guía para el examen final, pues contiene las preguntas que se encuentran en el examen, la justificación y el video del curso donde se habla sobre eso. Espero y les sea de utilidad 😄.
Platzi-Test




**Resumen :
…
Variable de Lectura y escritura : (VAR) Variable de escritura lectura. Su valor Puede Cambiar, Su valor se. asigna en tiempo de Compilación.
…
Variable de Lectura y escritura : (VAL) Variable de solo lectura . Se asigna en tiempo de Ejecución,Su valor no puede Cambiar
(Const val) Variable de solo lectura . Se asigna en tiempo de Compilacion Su valor no puede Cambiar.

**

  • var = valores que pueden cambiar
  • val = valores que no pueden cambiar
  • const val = valores que no deben camiar nunca, se declaran fuera de las funciones

Declarar variables

{var/val/const val} {nombreVariable} : {Tipo de dato (opcional)} = {valor}


const val PI = 3.1415 //constante
fun main(args: Array<String>) {
    println("Hello World!")
    var optionA = 80 //variable mutable
    println( "numero: "+optionA)
    optionA = 50
    println( "numero cambiado: "+  optionA )

    val name = "susana" //variable inmutable
    println("name: "+ name )
    println("pi"+PI)

No es necesario usar puntos y coma en Kotlin. Qué refrescante pero qué extraño se siente que así sea.

Sintaxis de una variable (var):
var nombre : tipo = valor

Las variables son la base de cualquier programa y sirven para reservar espacios en memoria para trabajarlos en la ejecución posteriormente. Son importantes en cualquier lenguaje de programación incluyendo Kotlin 😃

var: variable que está cambiando su valor val: su valor es el mismo durante el tiempo de ejecución
//const se define a fuera de la función, una valor que no debería cambiar
//Estas variables se generan antes de ejecutarse  se declara en tiempo de compilacion
const val PI = 3.1416

fun main(args: Array<String>){
    println("Helllo World")
    //var dinero : Int = 10
    //variable de lectura y escritura, se declara en tiempo de ejecución
    var dinero = 10
    println(dinero)
    dinero = 5
    println(dinero)

    //val es solo de lectura no se peude cambiar, se declara en tiempo de ejecución
    val nombre = "Maria"
    //nombre = "Vane" no se puede reasignar marca error

    println(nombre)
    println(PI)
}

VAR = CHANGEABLES
VAL = UNCHANGEABLES