Diferencias entre val y var en Kotlin

Kailash Vaviya 15 febrero 2024
Diferencias entre val y var en Kotlin

Kotlin permite declarar dos tipos de variables: val y var. Este artículo discutirá la diferencia entre los dos.

Si bien ambas palabras clave se utilizan para declarar variables, existen algunas diferencias clave entre ellas.

Diferencias entre val y var en Kotlin

La diferencia más significativa entre las propiedades val y var es que la primera es inmutable. Podemos cambiar el valor de las variables var, pero no podemos alterar el valor de una variable val.

Son similares a la palabra clave final en Java. Algunas otras diferencias entre las variables val y var son:

  1. Las variables var se pueden asignar varias veces, mientras que las variables val solo se pueden asignar una vez.
  2. Las variables var se pueden reasignar, pero las variables val no se pueden reasignar.

Ahora que conocemos la diferencia entre val y var, veamos algunos ejemplos en los que tratamos de cambiar sus valores.

Usa la palabra clave var en Kotlin

En este ejemplo, usaremos la palabra clave var para declarar una variable e intentar cambiar su valor.

var v = "Hello!"

fun main() {
    println("This is a var variable: "+v);

    // Changing the value of var variable
    v = "Welcome!";
    println("New value of the var variable is: " +v);
}

Producción:

Ejemplo de variables var

Haga clic aquí para ver la demostración del código de ejemplo anterior.

Usa la palabra clave val en Kotlin

Aquí, crearemos una variable inmutable usando la palabra clave val e intentaremos cambiar su valor.

val v = "Hello!"

fun main() {
    println("This is a val variable: "+v);

    // Changing the value of val variable
    v = "Welcome!";
    println("New value of the val variable is: " +v);
}

Producción:

Ejemplo de variables val

Como podemos ver en la salida, cambiar la variable val arroja un error: Val no se puede reasignar.

Haga clic aquí para ver la demostración del código de ejemplo.

Cambiar las propiedades de las variables val en Kotlin

Si bien no podemos cambiar el valor de las variables declaradas usando la palabra clave val, aún podemos cambiar sus propiedades. Veamos un ejemplo donde declaramos una variable usando val y cambiamos sus propiedades.

fun main(args: Array<String>) {
    val student = Student("David Shaw",1)
    print(student)
    student.name = "Joe Smith"
    print("\n"+student)
}

data class Student(var name: String = "", var id: Int = 0)

Producción:

Ejemplo de cambio de propiedades de val

Como podemos ver, las propiedades de una variable val son mutables.

Haga clic aquí para ver la demostración del código de ejemplo.

Kailash Vaviya avatar Kailash Vaviya avatar

Kailash Vaviya is a freelance writer who started writing in 2019 and has never stopped since then as he fell in love with it. He has a soft corner for technology and likes to read, learn, and write about it. His content is focused on providing information to help build a brand presence and gain engagement.

LinkedIn

Artículo relacionado - Kotlin Keyword