Variables en JavaFX

23May07

Las variables se declaran mediante la palabra clave var, siguiendo el formato:

1: var <nombre de la variable> : <tipo> <cardinal> = <valor inicial>;

Donde:

  • Nombre de la variable: Nombre con el que se referenciará a la variable.
  • Tipo (opcional): Tipo de datos que podrá almacenar la variable. En caso de no especificarse ningun tipo, la variable será del tipo del valor que le asignemos por primera vez.
  • Cardinal (opcional): Indica la cantidad de valores que la variable almacenará. Existen tre símbolos:
    • ? = valor opcional. La variable puede almacenar un valor o ninguno (valor nulo [null])
    • + = 1 o más valores. La variable debe poseer uno o más valores, nunca un valor nulo.
    • * = 0 o más valores. La variable puede tener uno o más valores, incluso tener un valor nulo.
  • Valor inicial (opcional): Valor con el cual se inicializa la variable. En caso de no especificarse la variable se inicia con un valor por defecto segun el tipo: 0 para los enteros, 0.0 para los reales, null para las cadenas y false para los lógicos.

Ejemplos

Declaramos una variable entera llamada n y la inicializamos en 6:

   1: import javafx.ui.*;
   2: import java.lang.System;
   3:
   4: var n: Integer = 6;
   5:
   6: System.out.println(n); //muestra "6"

Declaramos una variable de cada tipo y no las inicializamos. Observar el valor por defecto de cada una:

   1: import javafx.ui.*;
   2: import java.lang.System;
   3:
   4: var b: Boolean;
   5: System.out.println(b);    //muestra "false"
   6:
   7: var s: String;
   8: System.out.println(s);    //muestra "null"
   9:
  10: var n: Number;
  11: System.out.println(n);    //muestra "0.0"
  12:
  13: var i: Integer;
  14: System.out.println(i);    //muestra "0"

En caso de no indicar el tipo de la variable tomará el tipo del primer valor que se le asigne, como vimos anteriormente. Se producirá un error de compilación si luego intentamos asignarle un valor incompatible:

   1: import javafx.ui.*;
   2: import java.lang.System;
   3:
   4: var a;
   5:
   6: a = true; <-- Aca la variable se transforma en una variable booleana
   7: System.out.println(a);
   8:
   9: a = "Hola"; <-- ERROR DE COMPILACIÓN, se esperaba un booleano

Los cardinales permiten indicar la cantidad de valores que se almacenaran dentro de una variable, como en este caso:

   1: import javafx.ui.*;
   2: import java.lang.System;
   3:
   4: var cadenas: String* = ["Hola", "Mundo"];
   5:
   6: var enteros: Integer+ = 14;
   7:
   8: var reales: Number* = [.145, 2.99, 3, 6.3];

Al ser muchas de las partes del enunciado opcionales se pueden obtener los mismos resultados de diferente forma. En este caso ambos arrays son iguales:

   1: import javafx.ui.*;
   2: import java.lang.System;
   3:
   4: var arrStr1: String* = ["Hola", "Mundo"];
   5:
   6: var arrStr2 = ["Hola", "Mundo"];

En el blog

Referencias



A %d blogueros les gusta esto: