Programacion en Java. Datos, variables y constantes

Tipos de datos primitivos.
Toda información en Java es representada mediante objetos o datos básicos o de tipo primitivo.Una diferencia importante entre C++ y Java, es que Java garantiza una representación interna única de los números enteros independientemente de la plataforma sobre la que se ejecute.

Tipo de dato Tamaño
bytes
Rango de valores que puede almacenar
Boolean 1/8 true o false
Char 2 Cualquier representación Unicode.
Byte 1 -128 a 127
Short 2 -32.768 a 32.767
Int 4 -2.147.483.648 a 2.147.483.647
Long 8 -9.223.372.036.854.775.808 a 9.223.372.036.854.775.807
Float 4 ± 3,40E38
Double 8 ± 1,797E308

Los tipos de datos primitivos se pueden organizar en grupos.

  • Número enteros: Son los tipos byte, short int y long.
  • Carácter: El tipo char representa un carácter codificado en Unicode.
  • Número decimal: Los tipos float y double representan números de coma flotante.
  • Lógicos: Los datos de tipo boolean pueden almacenar valores del tipo “true” y “false”.

Literales.
Un literal o constante, es un valor fijo que se puede asignar directamente a una variable o puede ser utilizado en una expresión.

Existen cuatro tipos de literales básicos, que coinciden con los cuatro grupos de tipos básicos en Java:

  • Númericos enteros
  • Numéricos decimales
  • Booleanos
  • Carácter

Si los utilizamos directamente en una expresión debemos tener en cuenta lo siguiente:

  • Los literales numéricos enteros se consideran de tipo int, a menos que se indique lo contrario. (byte b = 10;)
    456 constante de tipo int
    -54282 constante de tipo int
    7282L constante de tipo long
    23l constante de tipo long
  • Los literales numéricos decimales se consideran de tipo double
    4.56    .67      0.67    56.      121.    12.0    1.3e34           1.45e-5
    (float p = 3.14; // Provoca un error de compilación por la ausencia del caracter “f”).
  • Los literales boolean son true y false
    (boolean b = 0; // Provoca un error de compilación debido a que en Java no se permite utilizar valores fuera de true o false).
  • Los literales de tipo char se escriben entre comillas simples (char car = ‘#’; char p = ‘\u03AF’).

Representación hexadecimal

Cualquier constante que comienza por 0x (cero x), es una constante hexadecimal (base 16).

0x10, 0x34 y 0x463 son constantes hexadecimales cuyas equivalencias decimales son 16, 52 y 1123.

Literales de cadena
Los literales de cadena se especifican encerrando una secuencia de caracteres entre un par de comillas dobles.
“Hola Mundo”
“cinco/nlineas”
“Esto es una cadena”,”Hola mundo/n”

Declaración de variables e inicializaciones

Las variables son unidades básicas de almacenamiento en Java .Una variable se define por la combinación de un identificador, un tipo y un inicializador opcional. Además las variables tiene un ámbito que define su visibilidad y una duración.

Para declarar una variable, indicaremos el tipo de dato, y a continuación, el nombre de la variable; es posible declarar mas de una variable a la vez

 byte hora;
int k, cod;
long p1;
double precio=23.4, iva=0.16, importeTotal;
edad=25; importeTotal=precio*iva+precio;
char cad_2;

Las variables se pueden modificar mediante indicadores.

Public La clase o variable de instancia es accesible desde todos los ámbitos.
Protected La clase o variable de instancia es accesible solo en el ámbito actual de la clase ,el ámbito del paquete actual y todas las subclases de la clase actual.
Private La clase o variable de instancia es accesible solo en el ámbito actual de la clase.
Final La variable es una constante ,de modo que su valor no se puede modificar.
Static La variable es una variable de clase, compartida entre todos los objetos instancia de una clase.
Transfert Se declara que no es parte de un estado persistente del objeto .
Volatile Se necesita a veces cuando se utiliza una variable instancia por ¿¿ para prevenir al compilador de su optimización.

Asignación.

Podemos asignarle valor a una variable durante su definición, o posteriormente, con la estructura:

variable = expresión;

Donde “expresión” puede ser cualquier expresión en Java que devuelva un valor acorde con el tipo de dato de la variable.
Ejemplos:

int p, k, v;
p = 30;

k = p + 20;
v = k * p;

 

Podemos ver todo esto, modificando la clase que creamos en el articulo anterior, dejándola asi:

 System.out.println("HOLA MUNDO");
 System.out.println("Pruebas de tipos");
 char c='A';
 double precio=23.4;
 double iva=0.16;
 double importeTotal;
 importeTotal=precio*iva+precio;
 System.out.println("Caracter: "+c);
 System.out.println("Equivalencia Unicode: "+(int)c);
 System.out.println("Importe Total=: "+importeTotal);
 System.out.println("Primavera\nVerano\nOtoño\nInvierno");
 System.out.println("Lun\tMar\tMie\tJue\tVie");
 System.out.println("Lun\\Mar\\Mie\\Jue\\Vie");
 System.out.println("\"Cocodrilo\"");

Si ahora le dais RUN, veréis en la consola de eclipse:

HOLA MUNDO
Pruebas de tipos
Caracter: A
Equivalencia Unicode: 65
Importe Total=: 27.144
Primavera
Verano
Otoño
Invierno
Lun Mar Mie Jue Vie
Lun\Mar\Mie\Jue\Vie
"Cocodrilo"

Declaración de datos de tipo constantes

Para declarar un dato de tipo constante se utiliza la palabra reservada final como en el siguiente ejemplo:

final float PI=3.1416F;

Conversión de tipos y moldeado 

Cuando un tipo de dato se asigna a otro tipo de variable tiene lugar una conversión automática de tipos si se cumplen las dos condiciones siguientes:

  • Los dos tipos son compatibles
  • El tipo destino es más grande que el tipo fuente.
    double a=6.0;
    float b;
    b=(float) a;
  • Las variables primitivas nunca se pueden moldear a un objeto clase
    String objStr=(string)0, //err
  • Para convertir un entero a una cadena ,añadir un literal de cadena vacía.
    String objStr=0+¨¨; // el operador + concatena

ARRAYS

Un array es un grupo de variables de tipos similares que se conocen con un nombre común. Los diferentes elementos contenidos en un array se definen por un índice y se acceden a ellos utilizando su índice; los índices arrancan en 0. Los arrays pueden ser multidimensionales y al igual que los objetos de la clase se crean utilizando la palabra new

Se pueden definir un array con la siguiente sintaxis:

Tipo variable nombreArray[ ]=new tipo Variable[logArray];
Tipo Variable[ ] nombreArray=new tipovariable[longArray];

Por ejemplo:

diaMes=new int[12]; // array de 12 enteros
diaMes[0]=31 //cargo el valor 31 en el primer elemento

También es posible inicializar el array en el momento de la definición

int[] diaMes={31,28,31,30,31,30,31,31,30,31,30,31};

Arrays multidimensionales

En Java , los arrays multidimensionales son realmente arrays de arrays.

tipovariable [ ] nombrearray=[val1,val2,…valn];

Esta sentencia crea un array de n. elementos y lo inicializa conlos valores contenidos entre llaves.

La sintaxis completa es:

Tipovariable[ ] nombreArray=new tipovariable[ ]{val1,val2,…valn}

Ejemplo

int dosD[ ] [ ] new int[4][5];

Esta sentencia asigna un array de enteros ,4 por 5 y lo asigna a dosD

Sintaxis alternativa de declaración de arrays

Tipo[ ] nombre_var

Las siguientes declaraciones son equivalentes

int a1[ ]=new[int3];
int [ ] a20newint[3];

Las siguientes dos declaraciones son también equivalentes

char mod1[][]=new chat[3][4],
char [][]mod2=new char[3][4]

La variable lenght
Todos los arrays unidimensionales tienen una variable de instancia denominada lenght asociada con ellos. Esta variable contiene la longitud del array. En el caso de arrays bidimensionales, La variable lenght se utiliza para acceder a la longitud de la primera fila.

Acerca de Miguel Garcia

Programador, Desarrollador web, Formador en distintas areas de informatica y director de equipos multidisciplinares.
Esta entrada fue publicada en Formacion, Java y etiquetada , . Guarda el enlace permanente.

3 respuestas a Programacion en Java. Datos, variables y constantes

  1. Pingback: Programacion en Java. SintaxisRecursos para formacion

  2. Pingback: Ejercicios Java (3) - Datos, variables y constantesRecursos para formacion

  3. Pingback: Java - Un resumen organizado....o no.Recursos para formacion

Deja un comentario