[Gracias al comentario de desempleado, hago el cambio de titulo, por uno más ad-hoc al post]
Uno de los pilares principales de la programación es el uso de variables. En Java encontramos muchos tipos de variables, capaces de almacenar todos los tipos de datos que necesitemos. Pero al estar hablando de programación Orientada a Objetos tenemos que diferenciar entre variables y objetos.
Las variables, en Java, son llamados primitivos. Simplemente almacenan un valor. En cambio, un objeto es un conjunto de variables y métodos.
Como aún no hemos tratado los conceptos de clase y objeto, tan importantes en Java, la explicación anterior puede parecer difusa. No se preocupen, que cuando tenga realmente claros los mecanismos de declaración y uso de clases escribiré un post aclaratorio sobre ellas. Hasta el momento, los que tienen nociones sobre programación, pueden ver a las variables primitivas como siempre los han visto.
Tenemos distintos tipos de primitivos :
boolean: Este tipo de variable solo puede tomar dos valores, o true o false. Por defecto, si no se le asigna ningún valor, le corresponde el valor false.
char: Las variables de caracteres pueden contener cualquier carácter, tanto números, como letras, como signos. El valor por defecto es NULL.
byte: Esta variable puede comprender valores numéricos enteros entre -128 y +127. Se caracteriza por su ligereza, ya que solo ocupa 8 bits (un byte), pero su utilidad es reducida.
short: Igual que byte, pero ocupando el doble de memoria (dos bytes) y permitiendo asignar valores mucho má grande (exactamente desde -32768 hasta 32767). También debe ser un valor entero.
int: Ocupa 32 bits (4 bytes), pero permite asignar valores en un rango especialmente grande; desde -2147483648 hasta 2147483647. Como en los tipos byte y short, el valor por defecto es 0.
long: Las variables tipo long ocupan 64 bits (8 bytes), ya que sus valores pueden jugar dentro de un rango amplísimo (de -9223372036854775808 a 9223372036854775807
). Al igual que sus hermanos pequeños (byte, short e int), su valor por defecto es 0. Una cosa muy importante es que a la hora de asignar un valor a este tipo de variables, tienes que indicar que se trata de un long añadiendo una L (mayúscula) al final del numero. Luego publicaré un ejemplo práctico.
float: Hasta ahora hemos hablado de variables para almacenar enteros, pero muchas veces necesitaremos representar números reales con decimales y demás. Para esto sirve float (y su hermana mayor, double). Ocupa 32 bits. Su precisión es muy pobre, y se pueden obtener resultados extraños trabajando con números grandes. Trataremos este tema en más profundidad en próximos comentarios, apoyado de código fuente.
double: Igual que float, pero mayor, ocupando 64 bits. Intenta arreglar los problemas de la coma flotante simple (float).
Ahora que ya sabemos los tipos de primitivos con los que contamos, y que la declaración de variables es simplemente:
tipoPrimitivo nombreVariable;,
debemos saber que hay algunas convenciones a la hora de dar nombre a las variables, para hacer código más entendible. Las variables deben hablar de los datos que contienen, cosa que permite una mejor identificación. No podemos dar el nombre haceCalor a un primitivo tipo string que contiene el nombre del usuario de la aplicación, solo provocaría confusión a la hora de mejorar/ampliar/estudiar el código. Un nombre adecuado para la variable sería nombreUsuario. Como habrán notado, la primera letra del nombre de variable siempre debe estar en minúscula, y si usamos más de una palabra la primera letra de la segunda palabra la ponemos en mayúscula. Así, si queremos dar nombre a una variable que contenga el numero de días del mes de febrero, podríamos poner numeroDiasFebrero. Otra cosa importante es que no se pueden usar palabras reservadas de Java, como class o main.
Cuando tenemos una variable declarada (para seguir el lenguaje estricto de Java deberíamos decir “un primitivo referenciado”), toca asignarle un valor. Esto se hace mediante el operador =. Ahí van algunos ejemplos :
byte contador; contador = 100; short dieciseisBits; DieciseisBits = 30500; boolean verdaderoFalso; verdaderoFalso = true;
Espero sea de utilidad.