Scala – Diferencia entre VAR y VAL

Scala permite crear variables mutables(se pueden leer y reescribir) e inmutables(sólo se pueden leer). La variables inmutables se comportan como constantes, únicamente pueden ser inicializadas una vez y su valor no se puede modificar, de manera que si se intenta asignarle un nuevo valor se produce un error de compilación. Estas variables se declaran con el modificador val.

En Scala, cuando se declara una variable con val debe asignarsele un valor en la declaración.

Así se puede observar que cuando se crea una variable de esta manera se produce un error de compilación al no asignarle un valor. Veamos un nuevo ejemplo, en este caso se va a declarar una variable de tipo array:

En este caso la referencia del array no puede modificarse, pero el array en si mismo puede ser modificado. En otras palabras el contenido del array puede ser modificado.

Mientras que las mutables pueden cambiar su valor en cualquier momento de la ejecución y al igual que las variables inmutables necesita inicializarse con una valor.con el modificador var.

Existe una excepción en la regla de inicialización de variables. Cuando son usadas como parámetros de un constructor, las variables serán inicializadas cuando el objeto es instanciado.

  • Pingback: #8()