var y val se usan para declarar variables en el lenguaje Kotlin. Sin embargo, hay algunas diferencias clave entre ellos:
VAR(Variable)
Es una variable general. El valor de una variable que se declara usando var se puede cambiar en cualquier momento a lo largo del programa. var también se denomina variable mutable y no final , ya que su valor se puede cambiar en cualquier momento.
Ejemplo:
fun main() { var marks = 10 println("Previous marks is " + marks) marks = 30 println("New marks " + marks) }
VALOR(Valor)
El objeto almacenado usando val no se puede cambiar, no se puede reasignar, es como la palabra clave final en java. val es inmutable . Sin embargo, una vez asignado, el valor se vuelve de solo lectura, las propiedades de un objeto de valor se pueden cambiar, pero el objeto en sí es de solo lectura.
Ejemplo 1:
fun main() { val marks = 10 println("Previous marks is " + marks) marks = 30 println("new marks " + marks) }
Ejemplo 2:
// Changing values of val object fun main() { val book = Book("Java", 1000) println(book) book.name = "Kotlin" println(book) } data class Book(var name : String = "", var price : Int = 0)